zhaozhao.zz
ec511fa709
Streams: add a new command XTREAM
...
XSTREAM CREATE <key> <id or *> -- Create a new empty stream.
XSTREAM SETID <key> <id or $> -- Set the current stream ID.
2018-10-09 13:11:04 +08:00
antirez
3e78344d87
Refactoring of XADD / XTRIM MAXLEN rewriting.
...
See #5141 .
2018-10-08 12:05:22 +02:00
Salvatore Sanfilippo
e5f1de1448
Merge pull request #5141 from soloestoy/fix-xtrim-inconsistency
...
Fix XTRIM and XADD with MAXLEN inconsistency
2018-10-08 12:00:00 +02:00
O(ʒ)
534c3bc21a
Fix typo
2018-10-07 13:37:58 +02:00
antirez
3d07ed983e
Fix typo in replicationCron() comment.
2018-10-05 18:30:45 +02:00
antirez
ce8b6ede34
Fix typo in design comment of bio.c.
2018-10-05 18:29:23 +02:00
antirez
68c0e6e331
xclaimCommand(): fix comment typos.
2018-10-04 17:34:06 +02:00
Hamid Alaei
87264235cc
fix timer context selected database
2018-10-04 17:02:10 +03:30
antirez
32e0d2376f
streamAppendItem(): Update the radix tree pointer only if changed.
2018-10-02 19:45:33 +02:00
antirez
9d4f51e1ff
Listpack: optionally force reallocation on inserts.
...
This is useful in order to spot bugs where we fail
at updating the pointer returned by the insertion
function. Normally often the same pointer is returned,
making it harder than needed to spot bugs.
Related to #5210 .
2018-10-02 19:37:36 +02:00
antirez
73a78adf13
Fix printf type mismatch in genRedisInfoString().
2018-10-02 16:26:30 +02:00
antirez
c7c3b23787
streamIteratorRemoveEntry(): set back lp only if pointer changed.
...
Most of the times the pointer will remain the same since integers of
similar size don't take more space in listpacks.
Related to #5210 .
2018-10-02 16:20:40 +02:00
Salvatore Sanfilippo
9fe7cd8f14
Merge pull request #5210 from soloestoy/raxinsert-in-xdel
...
Streams: update listpack with new pointer in XDEL
2018-10-02 16:18:55 +02:00
Salvatore Sanfilippo
2b09884faf
Merge pull request #5392 from soloestoy/bugfix-brpoplpush
...
bugfix: replace lastcmd with cmd when rewrite BRPOPLPUSH as RPOPLPUSH
2018-10-02 16:09:22 +02:00
Salvatore Sanfilippo
e19a06d2dd
Merge pull request #5242 from oranagra/script_mem
...
script cache memory in INFO and MEMORY includes both script code and overheads
2018-10-02 16:03:05 +02:00
Salvatore Sanfilippo
fe43406929
Merge pull request #5397 from bmerry/fix-bad-zmalloc-size
...
Fix invalid use of sdsZmallocSize on an embedded string
2018-10-01 13:30:42 +02:00
Salvatore Sanfilippo
9ce638695c
Merge pull request #5398 from bmerry/fix-zrealloc-accounting
...
Fix incorrect memory usage accounting in zrealloc
2018-10-01 13:28:53 +02:00
Salvatore Sanfilippo
cd2ee8b113
Merge pull request #5396 from oranagra/cmdstats_exec
...
fix #5024 - commandstats for multi-exec were logged as EXEC.
2018-10-01 13:24:49 +02:00
Salvatore Sanfilippo
1da93f85cc
Merge pull request #5400 from halaei/fix-dict-get-on-not-found
...
fix dict get on not found
2018-10-01 13:22:33 +02:00
Hamid Alaei
86fb7b20bf
fix dict get on not found
2018-10-01 13:57:25 +03:30
antirez
9e0e5ccbf4
Fix XINFO comment for consistency.
2018-10-01 11:38:58 +02:00
Bruce Merry
8fd1031b10
Fix incorrect memory usage accounting in zrealloc
...
When HAVE_MALLOC_SIZE is false, each call to zrealloc causes used_memory
to increase by PREFIX_SIZE more than it should, due to mis-matched
accounting between the original zmalloc (which includes PREFIX size in
its increment) and zrealloc (which misses it from its decrement).
I've also supplied a command-line test to easily demonstrate the
problem. It's not wired into the test framework, because I don't know
TCL so I'm not sure how to automate it.
2018-09-30 11:49:03 +02:00
Oran Agra
f03aed3ca9
fix #5024 - commandstats for multi-exec were logged as EXEC.
...
this was broken a while back by ba9154d7e7
the purpose of which was to fix commandstats for GEOADD
2018-09-30 12:43:11 +03:00
Bruce Merry
ecc48369ce
Fix invalid use of sdsZmallocSize on an embedded string
...
sdsZmallocSize assumes a dynamically allocated SDS. When given a string
object created by createEmbeddedStringObject, it calls zmalloc_size on a
pointer that isn't the one returned by zmalloc
2018-09-30 11:32:48 +02:00
antirez
08c26591e3
Try to avoid issues with GCC pragmas and older compilers.
...
See issue #5394 .
2018-09-28 13:00:44 +02:00
zhaozhao.zz
fc9b4e7958
bugfix: replace lastcmd with cmd when rewrite BRPOPLPUSH as RPOPLPUSH
...
There are two problems if we use lastcmd:
1. BRPOPLPUSH cannot be rewrited as RPOPLPUSH in multi/exec
In mulit/exec context, the lastcmd is exec.
2. Redis will crash when execute RPOPLPUSH loading from AOF
In fakeClient, the lastcmd is NULL.
2018-09-28 12:06:48 +08:00
antirez
5aa347b377
Modules: hellodict example WIP #3 : KEYRANGE.
2018-09-27 17:01:35 +02:00
antirez
0aecb135c9
Modules: Modules: dictionary API WIP #13 : Compare API exported.
2018-09-27 11:46:22 +02:00
antirez
80bde9844b
Modules: Modules: dictionary API WIP #12 : DictCompare API.
2018-09-27 11:44:25 +02:00
antirez
7af83a0c11
Modules: Modules: dictionary API WIP #11 : DictCompareC API.
2018-09-27 11:44:16 +02:00
antirez
20f047965c
Modules: hellodict example WIP #1 : GET command.
2018-09-27 11:22:43 +02:00
antirez
880ca07719
Modules: hellodict example WIP #1 : SET command.
2018-09-26 17:52:12 +02:00
antirez
bbe18eacda
Modules: remove useless defines in hellotimer.c
2018-09-26 17:42:00 +02:00
antirez
6c3bfb00fc
Modules: fix top comment of hellotimer.c
2018-09-26 17:41:08 +02:00
antirez
bec4bfaa0b
Merge branch 'unstable' of github.com:/antirez/redis into unstable
2018-09-26 13:39:16 +02:00
antirez
1e585d01de
Modules: dictionary API WIP #10 : export API to modules.
2018-09-26 13:39:01 +02:00
Salvatore Sanfilippo
1d6711a764
Merge pull request #5373 from gkorland/patch-5
...
add missing argument to function doc
2018-09-25 17:18:50 +02:00
antirez
3ff82790e1
Modules: dictionary API WIP #9 : iterator returning string object.
2018-09-25 16:49:46 +02:00
antirez
fb1d5717de
Modules: dictionary API WIP #8 : Iterator next/prev.
2018-09-25 16:25:46 +02:00
antirez
58ac1f8bbe
Modules: dictionary API WIP #7 : don't store the context.
...
Storing the context is useless, because we can't really reuse that
later. For instance in the API RM_DictNext() that returns a
RedisModuleString for the next key iterated, the user should pass the
new context, because we may run the keys of the dictionary in a
different context of the one where the dictionary was created. Also the
dictionary may be created without a context, but we may still demand
automatic memory management for the returned strings while iterating.
2018-09-25 12:58:16 +02:00
antirez
b6c794acf6
Modules: dictionary API WIP #6 : implement automatic memory management.
2018-09-25 12:45:08 +02:00
antirez
448d696549
Modules: dictionary API work in progress #5 : rename API for consistency.
...
By using the "C" suffix for functions getting pointer/len, we can do the
same in the future for other modules APIs that need a variant with
pointer/len and that are now accepting a RedisModuleString.
2018-09-25 12:31:46 +02:00
antirez
c7e0c410d6
Modules: change RedisModuleString API to allow NULL context.
...
The burden of having to always create RedisModuleString objects within a
module context was too much, especially now that we have threaded
operations and modules are doing more interesting things. The context in
the string API is currently only used for automatic memory managemnet,
so now the API was modified so that the user can opt-out this feature by
passing a NULL context.
2018-09-24 17:20:00 +02:00
antirez
3968550135
Modules: dictionary API work in progress #4 : reseek API.
2018-09-24 16:43:47 +02:00
antirez
14b2f7b033
Modules: dictionary API work in progress #3 : Iterator creation.
2018-09-24 11:44:49 +02:00
antirez
bb64c7d8b2
Modules: dictionary API work in progress #2 : Del API.
2018-09-24 11:16:58 +02:00
antirez
c5e0bc1070
Modules: dictionary API work in progress #1 .
2018-09-21 17:54:09 +02:00
Guy Korland
8b87876094
add missing argument to function doc
2018-09-21 02:46:31 +03:00
antirez
0d6f11f4d1
Module cluster flags: use RM_SetClusterFlags() in the example.
2018-09-19 16:17:20 +02:00
antirez
3213e8de92
Module cluster flags: add RM_SetClusterFlags() API.
2018-09-19 12:02:37 +02:00
antirez
777cc5b987
Module cluster flags: add hooks for NO_FAILOVER flag.
2018-09-19 11:43:37 +02:00
antirez
c202ba2b35
Module cluster flags: add hooks for NO_REDIRECTION flag.
2018-09-19 11:31:22 +02:00
antirez
744fe7f348
Module cluster flags: initial vars / defines added.
2018-09-19 11:20:52 +02:00
antirez
7cdf272d46
Modules: rename the reused static client to something more general.
2018-09-18 13:22:05 +02:00
antirez
9df1f73e4c
Modules: associate a fake client to timer context callback.
2018-09-18 13:19:33 +02:00
antirez
bf18044082
Modules: associate a fake client to cluster message context callback.
...
Fixes #5354 .
2018-09-18 13:15:40 +02:00
artix
81c4be42c1
Cluster Manager: clusterManagerFixOpenSlot now counts node's keys in slot
...
if node is neither migrating nor importing.
2018-09-17 16:26:46 +02:00
antirez
12fd92bf67
Merge branch 'unstable' of github.com:/antirez/redis into unstable
2018-09-17 16:24:52 +02:00
antirez
9f43264f86
Revert "fix repeat argument issue and reduce unnessary loop times for redis-cli."
...
Reverts commit 9505dd2011
since the commit introduced the very serious bug issue #5286 .
2018-09-17 16:24:07 +02:00
Salvatore Sanfilippo
54871412c2
Merge pull request #5348 from gkorland/patch-2
...
No need to return "OK"
2018-09-17 15:42:50 +02:00
Salvatore Sanfilippo
f39bb4107c
Merge pull request #5352 from gkorland/patch-3
...
typo fix
2018-09-17 15:41:24 +02:00
Guy Korland
3176f8e955
Merge pull request #1 from gkorland/patch-5
...
Fix few typos
2018-09-17 14:15:39 +03:00
Guy Korland
3b0f008615
Fix few typos
2018-09-17 14:13:46 +03:00
Guy Korland
44f9e0d7c7
RedisModule_HashSet call must end with NULL
...
Extended the RedisModule_HashSet doc to mark that each call must end with NULL
2018-09-17 13:54:56 +03:00
Guy Korland
b2fc998ad6
typo fix
2018-09-16 15:21:21 +03:00
antirez
c560ade831
LOLWUT: split the command from version-specific implementations.
2018-09-14 12:35:59 +02:00
antirez
411f4b4c12
Slave removal: add a few forgotten aliases for CONFIG SET.
2018-09-13 21:43:15 +02:00
antirez
9849cf2df5
LOLWUT: add Redis version in the output.
...
This creates an incentive to run the command and as a side effect
experience the art piece inside.
2018-09-13 21:36:02 +02:00
Guy Korland
62015d4fb0
No need to return "OK"
...
No need to return "+OK" in this case since the result is an Array of all the nodes
2018-09-13 15:42:17 +03:00
antirez
d23cae5f06
LOLWUT: Ness -> Nees.
2018-09-13 09:03:36 +02:00
antirez
ffbf8f4b8e
LOLWUT: Limit maximum CPU effort.
2018-09-13 08:31:55 +02:00
antirez
5c9a7b891f
LOLWUT: change padding conditional to a more direct one.
2018-09-13 08:29:55 +02:00
antirez
02817d8b3d
Merge branch 'unstable' of github.com:/antirez/redis into unstable
2018-09-13 08:08:56 +02:00
antirez
4dc37c240e
LOLWUT: fix crash when col < 2.
...
Close #5345 .
2018-09-13 08:08:30 +02:00
Slobodan Mišković
30377f154f
Fix spelling descrive -> describe
2018-09-12 12:10:07 -07:00
antirez
690560e8db
LOLWUT: fix structure typo in comment.
2018-09-12 17:53:00 +02:00
antirez
cf0abff567
LOLWUT: Fix license copyright year.
2018-09-12 12:40:40 +02:00
antirez
77bdfb5339
LOLWUT: increase the translation factor.
2018-09-12 12:28:28 +02:00
antirez
0dd8fd062d
LOLWUT: change default size to fit a normal terminal better.
2018-09-12 12:26:33 +02:00
antirez
43385c4375
LOLWUT: wrap it into a proper command.
2018-09-12 11:34:10 +02:00
antirez
eac2a79cf5
LOLWUT: draw Schotter by Georg Nees.
2018-09-12 11:16:07 +02:00
antirez
2ead41e05b
LOLWUT: draw rotated squares using trivial trigonometry.
2018-09-12 10:36:02 +02:00
antirez
a974531d1a
LOLWUT: draw lines using Bresenham algorithm.
2018-09-11 21:15:43 +02:00
antirez
7777379814
LOLWUT: Rendering of the virtual canvas to a string.
2018-09-11 17:32:57 +02:00
antirez
096c74c886
LOLWUT: show the output verbatim in redis-cli.
2018-09-11 16:29:31 +02:00
antirez
2dbf2047ac
LOLWUT: canvas structure and BSD license on top.
2018-09-11 16:09:24 +02:00
antirez
65ce839d09
LOLWUT: Emit Braille unicode according to pixel pattern.
2018-09-11 16:04:25 +02:00
antirez
0c1d28e2d0
Slave removal: remove slave from object.c.
2018-09-11 15:32:28 +02:00
antirez
db146de086
Slave removal: server.c logs fixed.
2018-09-11 15:32:28 +02:00
antirez
ca6aed02f8
Slave removal: replace very few things in Sentinel.
...
SENTINEL REPLICAS was added as an alias, in the configuration rewriting
now it uses known-replica, however all the rest is basically at API
level of logged events and messages having to do with the protocol, so
there is very little to do here compared to the Redis core itself, to
preserve compatibility.
2018-09-11 15:32:28 +02:00
antirez
1051d93837
Slave removal: scripting.c logs and other stuff fixed.
2018-09-11 15:32:28 +02:00
antirez
61b7a176ef
Slave removal: replication.c logs fixed.
2018-09-11 15:32:28 +02:00
antirez
cff5f36d94
Slave removal: networking.c logs fixed.
2018-09-11 15:32:28 +02:00
antirez
05e8db24ed
Slave removal: blocked.c logs fixed.
2018-09-11 15:32:28 +02:00
antirez
8296e5c846
Slave removal: slave mode -> replica mode text in redis-cli.
2018-09-11 15:32:28 +02:00
antirez
6f3d357d8f
Slave removal: slave -> replica in redis.conf and output buffer option.
2018-09-11 15:32:28 +02:00
antirez
6f58486139
Slave removal: config.c converted + config rewriting hacks.
...
Aliases added for all the commands mentioning slave. Moreover CONFIG
REWRITE will use the new names, and will be able to reuse the old lines
mentioning the old options.
2018-09-11 15:32:28 +02:00
antirez
a9419e2386
Slave removal: Convert cluster.c log messages and command names.
2018-09-11 15:32:28 +02:00
antirez
f579b77449
Slave removal: redis-cli --slave -> --replica.
...
--slave alias remains but is undocumented, just for backward
compatibiltiy.
2018-09-11 15:32:28 +02:00
antirez
ef2c7a5bbb
Slave removal: SLAVEOF -> REPLICAOF. SLAVEOF is now an alias.
2018-09-11 15:32:28 +02:00