27610 Commits

Author SHA1 Message Date
chenhui0212
71fafd761a fix comments in listpack.c 2020-06-16 17:50:38 +08:00
antirez
fc08cafdb0 Use cluster connections too, to limit maxclients.
See #7401.
2020-06-16 11:45:11 +02:00
antirez
4b8d8826af Use cluster connections too, to limit maxclients.
See #7401.
2020-06-16 11:45:11 +02:00
antirez
714c2be383 Merge branch 'unstable' of github.com:/antirez/redis into unstable 2020-06-16 11:11:01 +02:00
antirez
62fc7f4f24 Merge branch 'unstable' of github.com:/antirez/redis into unstable 2020-06-16 11:11:01 +02:00
antirez
ae770c3034 Tracking: fix enableBcastTrackingForPrefix() invalid sdslen() call.
Related to #7387.
2020-06-16 11:09:48 +02:00
antirez
784479939d Tracking: fix enableBcastTrackingForPrefix() invalid sdslen() call.
Related to #7387.
2020-06-16 11:09:48 +02:00
John Sully
e81a4a159a Fix crash in async delete when storage provider is not set and key doesn't actually exist
Former-commit-id: 4a4828390118ab52851d8bf229c4ae853100053c
2020-06-15 19:47:06 -04:00
John Sully
9797d4a8f2 Fix crash in async delete when storage provider is not set and key doesn't actually exist
Former-commit-id: 4a4828390118ab52851d8bf229c4ae853100053c
2020-06-15 19:47:06 -04:00
Salvatore Sanfilippo
96ca6e9f5d Merge pull request #7396 from MeirShpilraien/fix_dict_scan_module_api
Fix RM_ScanKey module api not to return int encoded strings
2020-06-15 10:43:33 +02:00
Salvatore Sanfilippo
6ce2ed870d
Merge pull request #7396 from MeirShpilraien/fix_dict_scan_module_api
Fix RM_ScanKey module api not to return int encoded strings
2020-06-15 10:43:33 +02:00
root
009a2d443a cluster.c remove if of clusterSendFail in markNodeAsFailingIfNeeded 2020-06-15 10:18:14 +08:00
root
c92464db69 cluster.c remove if of clusterSendFail in markNodeAsFailingIfNeeded 2020-06-15 10:18:14 +08:00
meir@redislabs.com
e37c16e425 Fix RM_ScanKey module api not to return int encoded strings
The scan key module API provides the scan callback with the current
field name and value (if it exists). Those arguments are RedisModuleString*
which means it supposes to point to robj which is encoded as a string.
Using createStringObjectFromLongLong function might return robj that
points to an integer and so break a module that tries for example to
use RedisModule_StringPtrLen on the given field/value.

The PR introduces a fix that uses the createObject function and sdsfromlonglong function.
Using those function promise that the field and value pass to the to the
scan callback will be Strings.

The PR also changes the Scan test module to use RedisModule_StringPtrLen
to catch the issue. without this, the issue is hidden because
RedisModule_ReplyWithString knows to handle integer encoding of the
given robj (RedisModuleString).

The PR also introduces a new test to verify the issue is solved.
2020-06-14 11:20:15 +03:00
meir@redislabs.com
a89bf734a9 Fix RM_ScanKey module api not to return int encoded strings
The scan key module API provides the scan callback with the current
field name and value (if it exists). Those arguments are RedisModuleString*
which means it supposes to point to robj which is encoded as a string.
Using createStringObjectFromLongLong function might return robj that
points to an integer and so break a module that tries for example to
use RedisModule_StringPtrLen on the given field/value.

The PR introduces a fix that uses the createObject function and sdsfromlonglong function.
Using those function promise that the field and value pass to the to the
scan callback will be Strings.

The PR also changes the Scan test module to use RedisModule_StringPtrLen
to catch the issue. without this, the issue is hidden because
RedisModule_ReplyWithString knows to handle integer encoding of the
given robj (RedisModuleString).

The PR also introduces a new test to verify the issue is solved.
2020-06-14 11:20:15 +03:00
antirez
00e1f87a08 Fix LCS object type checking. Related to #7379. 2020-06-12 12:43:40 +02:00
antirez
1055398849 Fix LCS object type checking. Related to #7379. 2020-06-12 12:43:40 +02:00
Salvatore Sanfilippo
c35a814c4f Merge pull request #7375 from hwware/lcs_crash_fix
Fix Server Crash in LCS Command
2020-06-12 12:31:15 +02:00
Salvatore Sanfilippo
a66298e6f1
Merge pull request #7375 from hwware/lcs_crash_fix
Fix Server Crash in LCS Command
2020-06-12 12:31:15 +02:00
antirez
d05cc51e4e help.h updated. 2020-06-12 12:16:24 +02:00
antirez
0cae0900cf help.h updated. 2020-06-12 12:16:24 +02:00
antirez
f66fc18807 help.h updated. 2020-06-12 12:16:19 +02:00
antirez
ca58198a76 help.h updated. 2020-06-12 12:16:19 +02:00
antirez
3dc6657ea8 LPOS: tests + crash fix. 2020-06-12 12:08:06 +02:00
antirez
e0022d8cfe LPOS: tests + crash fix. 2020-06-12 12:08:06 +02:00
antirez
010dd2b320 LPOS: update to latest proposal.
See https://gist.github.com/antirez/3591c5096bc79cad8b5a992e08304f48
2020-06-12 12:08:06 +02:00
antirez
495327c020 LPOS: update to latest proposal.
See https://gist.github.com/antirez/3591c5096bc79cad8b5a992e08304f48
2020-06-12 12:08:06 +02:00
antirez
00e400ed66 LPOS: implement the final design. 2020-06-12 12:08:06 +02:00
antirez
afb8b3c030 LPOS: implement the final design. 2020-06-12 12:08:06 +02:00
Paul Spooren
795c807fed LRANK: Add command (the command will be renamed LPOS).
The `LRANK` command returns the index (position) of a given element
within a list. Using the `direction` argument it is possible to specify
going from head to tail (acending, 1) or from tail to head (decending,
-1). Only the first found index is returend. The complexity is O(N).

When using lists as a queue it can be of interest at what position a
given element is, for instance to monitor a job processing through a
work queue. This came up within the Python `rq` project which is based
on Redis[0].

[0]: https://github.com/rq/rq/issues/1197

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-06-12 12:08:06 +02:00
Paul Spooren
31c9cd8604 LRANK: Add command (the command will be renamed LPOS).
The `LRANK` command returns the index (position) of a given element
within a list. Using the `direction` argument it is possible to specify
going from head to tail (acending, 1) or from tail to head (decending,
-1). Only the first found index is returend. The complexity is O(N).

When using lists as a queue it can be of interest at what position a
given element is, for instance to monitor a job processing through a
work queue. This came up within the Python `rq` project which is based
on Redis[0].

[0]: https://github.com/rq/rq/issues/1197

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-06-12 12:08:06 +02:00
hwware
8ab655bd7b fix memory leak 2020-06-11 09:56:52 -04:00
hwware
7008a0ba66 fix memory leak 2020-06-11 09:56:52 -04:00
antirez
b7db223637 LPOS: tests + crash fix. 2020-06-11 12:39:06 +02:00
antirez
0091125cae LPOS: tests + crash fix. 2020-06-11 12:39:06 +02:00
antirez
336e8a7fa2 LPOS: update to latest proposal.
See https://gist.github.com/antirez/3591c5096bc79cad8b5a992e08304f48
2020-06-11 11:18:20 +02:00
antirez
89ca2afd6b LPOS: update to latest proposal.
See https://gist.github.com/antirez/3591c5096bc79cad8b5a992e08304f48
2020-06-11 11:18:20 +02:00
Ben Schermel
9e9064782d Merge branch 'keydbpro' into PRO_RELEASE_6
Former-commit-id: 97280cec291bca779739e008b9467fbb40a19a5f
2020-06-10 17:35:21 -04:00
Ben Schermel
bc8fead240 Merge branch 'keydbpro' into PRO_RELEASE_6
Former-commit-id: 97280cec291bca779739e008b9467fbb40a19a5f
2020-06-10 17:35:21 -04:00
Ben Schermel
b301f19c7e Merge branch 'keydbpro' into PRO_RELEASE_6
Former-commit-id: f70e34b999ba842617ed39b88a7f5bb453d570c5
2020-06-10 17:27:34 -04:00
Ben Schermel
c4bbf07aba Merge branch 'keydbpro' into PRO_RELEASE_6
Former-commit-id: f70e34b999ba842617ed39b88a7f5bb453d570c5
2020-06-10 17:27:34 -04:00
John Sully
ab9e3f1d2a Fix failure to find expire during rehash
Former-commit-id: b66269865cb71a5e1dd33588b012206da2765824
2020-06-10 12:48:54 -04:00
John Sully
4e609863b6 Fix failure to find expire during rehash
Former-commit-id: b66269865cb71a5e1dd33588b012206da2765824
2020-06-10 12:48:54 -04:00
antirez
5766a69a41 LPOS: implement the final design. 2020-06-10 12:49:15 +02:00
antirez
e63a5ba122 LPOS: implement the final design. 2020-06-10 12:49:15 +02:00
Paul Spooren
cc04253b1d LRANK: Add command (the command will be renamed LPOS).
The `LRANK` command returns the index (position) of a given element
within a list. Using the `direction` argument it is possible to specify
going from head to tail (acending, 1) or from tail to head (decending,
-1). Only the first found index is returend. The complexity is O(N).

When using lists as a queue it can be of interest at what position a
given element is, for instance to monitor a job processing through a
work queue. This came up within the Python `rq` project which is based
on Redis[0].

[0]: https://github.com/rq/rq/issues/1197

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-06-10 12:07:40 +02:00
Paul Spooren
a7936ef96d LRANK: Add command (the command will be renamed LPOS).
The `LRANK` command returns the index (position) of a given element
within a list. Using the `direction` argument it is possible to specify
going from head to tail (acending, 1) or from tail to head (decending,
-1). Only the first found index is returend. The complexity is O(N).

When using lists as a queue it can be of interest at what position a
given element is, for instance to monitor a job processing through a
work queue. This came up within the Python `rq` project which is based
on Redis[0].

[0]: https://github.com/rq/rq/issues/1197

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-06-10 12:07:40 +02:00
John Sully
15e2b066f3 Bump version
Former-commit-id: c7b16835b1c52e9d8a4859a5b6e42ea5f6a31df2
2020-06-09 21:03:11 -04:00
John Sully
151ace0b95 Bump version
Former-commit-id: c7b16835b1c52e9d8a4859a5b6e42ea5f6a31df2
2020-06-09 21:03:11 -04:00
John Sully
10908dc384 Merge branch 'keydbpro' into PRO_RELEASE_6
Former-commit-id: 9d8d3a54fdb9eaad0a7cfc3d938fa35d2819fa93
2020-06-09 21:02:55 -04:00