5013 Commits

Author SHA1 Message Date
antirez
b2cea94b8b 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
antirez
eb3b18414e LOLWUT: Ness -> Nees. 2018-09-13 09:03:36 +02:00
antirez
31e5ef5069 LOLWUT: Limit maximum CPU effort. 2018-09-13 08:31:55 +02:00
antirez
bd5efd7964 LOLWUT: change padding conditional to a more direct one. 2018-09-13 08:29:55 +02:00
antirez
d876d28392 Merge branch 'unstable' of github.com:/antirez/redis into unstable 2018-09-13 08:08:56 +02:00
antirez
130fc1d97c LOLWUT: fix crash when col < 2.
Close #5345.
2018-09-13 08:08:30 +02:00
Slobodan Mišković
2676007f5e Fix spelling descrive -> describe 2018-09-12 12:10:07 -07:00
antirez
e51f872d33 LOLWUT: fix structure typo in comment. 2018-09-12 17:53:00 +02:00
antirez
77c0aedc50 LOLWUT: Fix license copyright year. 2018-09-12 12:40:40 +02:00
antirez
ecdaa43a57 LOLWUT: increase the translation factor. 2018-09-12 12:28:28 +02:00
antirez
654adcf63a LOLWUT: change default size to fit a normal terminal better. 2018-09-12 12:26:33 +02:00
antirez
55d85db425 LOLWUT: wrap it into a proper command. 2018-09-12 11:34:10 +02:00
antirez
5acddeefa2 LOLWUT: draw Schotter by Georg Nees. 2018-09-12 11:16:07 +02:00
antirez
7497a92f46 LOLWUT: draw rotated squares using trivial trigonometry. 2018-09-12 10:36:02 +02:00
antirez
c42e3a25ef LOLWUT: draw lines using Bresenham algorithm. 2018-09-11 21:15:43 +02:00
antirez
f985d802cf LOLWUT: Rendering of the virtual canvas to a string. 2018-09-11 17:32:57 +02:00
antirez
c1728940a0 LOLWUT: show the output verbatim in redis-cli. 2018-09-11 16:29:31 +02:00
antirez
2e62e8550b LOLWUT: canvas structure and BSD license on top. 2018-09-11 16:09:24 +02:00
antirez
7e51ba1ff0 LOLWUT: Emit Braille unicode according to pixel pattern. 2018-09-11 16:04:25 +02:00
antirez
e670825ef9 Slave removal: remove slave from object.c. 2018-09-11 15:32:28 +02:00
antirez
706c5e8889 Slave removal: server.c logs fixed. 2018-09-11 15:32:28 +02:00
antirez
059fd682ae 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
3801c55e0c Slave removal: scripting.c logs and other stuff fixed. 2018-09-11 15:32:28 +02:00
antirez
d6d9b778ac Slave removal: replication.c logs fixed. 2018-09-11 15:32:28 +02:00
antirez
04d65fc559 Slave removal: networking.c logs fixed. 2018-09-11 15:32:28 +02:00
antirez
7591c476f8 Slave removal: blocked.c logs fixed. 2018-09-11 15:32:28 +02:00
antirez
92eb72d175 Slave removal: slave mode -> replica mode text in redis-cli. 2018-09-11 15:32:28 +02:00
antirez
dcdcbcc375 Slave removal: slave -> replica in redis.conf and output buffer option. 2018-09-11 15:32:28 +02:00
antirez
33cfd1a30e 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
3b87cad43d Slave removal: Convert cluster.c log messages and command names. 2018-09-11 15:32:28 +02:00
antirez
d0647506b3 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
bdca5b9be5 Slave removal: SLAVEOF -> REPLICAOF. SLAVEOF is now an alias. 2018-09-11 15:32:28 +02:00
Salvatore Sanfilippo
ebe75d4125 Merge pull request #5307 from mesbahamin/use_geohash_defines_in_check
Use geohash limit defines in constraint check
2018-09-07 12:31:27 +02:00
Salvatore Sanfilippo
fc72dbf9c6 Merge pull request #5239 from jeffreylovitz/cli-help-fix
CLI Help text loop verifies arg count
2018-09-07 12:28:22 +02:00
Salvatore Sanfilippo
d214436bc7 Merge pull request #5322 from youjiali1995/fix-sentinel-randomize
sentinel: fix randomized sentinelTimer.
2018-09-07 12:10:35 +02:00
Salvatore Sanfilippo
9ba385aaac Merge pull request #5324 from youjiali1995/fix-bio
bio: fix bioWaitStepOfType.
2018-09-07 12:06:02 +02:00
Weiliang Li
82634bcc19 fix usage typo in redis-cli 2018-09-06 13:40:05 +08:00
antirez
39e09ea84c Use commands (effects) replication by default in scripts.
See issue #5250 and issue #5292 for more info.
2018-09-05 19:33:56 +02:00
antirez
1fd6c390b2 Safer script stop condition on OOM.
Here the idea is that we do not want freeMemoryIfNeeded() to propagate a
DEL command before the script and change what happens in the script
execution once it reaches the slave. For example see this potential
issue (in the words of @soloestoy):

On master, we run the following script:

    if redis.call('get','key')
    then
        redis.call('set','xxx','yyy')
    end
    redis.call('set','c','d')

Then when redis attempts to execute redis.call('set','xxx','yyy'), we call freeMemoryIfNeeded(), and the key may get deleted, and because redis.call('set','xxx','yyy') has already been executed on master, this script will be replicated to slave.

But the slave received "DEL key" before the script, and will ignore maxmemory, so after that master has xxx and c, slave has only one key c.

Note that this patch (and other related work) was authored collaboratively in
issue #5250 with the help of @soloestoy and @oranagra.

Related to issue #5250.
2018-09-05 15:48:08 +02:00
antirez
a8a0b52358 Propagate read-only scripts as SCRIPT LOAD.
See issue #5250 and the new comments added to the code in this commit
for details.
2018-09-05 15:44:33 +02:00
antirez
042ee28b09 Don't perform eviction when re-entering the event loop.
Related to #5250.
2018-09-05 13:10:07 +02:00
youjiali1995
ac7b3ec9ca bio: fix bioWaitStepOfType. 2018-09-05 16:51:13 +08:00
youjiali1995
219c5fbb1b sentinel: fix randomized sentinelTimer. 2018-09-05 10:32:18 +08:00
antirez
5fda4a85dd Clarify why remaining may be zero in readQueryFromClient().
See #5304.
2018-09-04 13:29:27 +02:00
antirez
d93b667464 Merge branch 'unstable' of github.com:/antirez/redis into unstable 2018-09-04 13:26:06 +02:00
Salvatore Sanfilippo
3bde684596 Merge pull request #5304 from soloestoy/fix-unexpected-readlen
networking: fix unexpected negative or zero readlen
2018-09-04 13:25:28 +02:00
Sascha Roland
cbbf49b7d3 #5299 Fix blocking XREAD for streams that ran dry
The conclusion, that a xread request can be answered syncronously in
case that the stream's last_id is larger than the passed last-received-id
parameter, assumes, that there must be entries present, which could be
returned immediately.
This assumption fails for empty streams that actually contained some
entries which got removed by xdel, ... .

As result, the client is answered synchronously with an empty result,
instead of blocking for new entries to arrive.
An additional check for a non-empty stream is required.
2018-09-04 13:13:36 +02:00
Salvatore Sanfilippo
65b7c53e0d Merge pull request #5315 from soloestoy/optimize-parsing-large-bulk
networking: optimize parsing large bulk greater than 32k
2018-09-04 12:49:50 +02:00
antirez
02306736c9 Unblocked clients API refactoring. See #4418. 2018-09-03 18:39:18 +02:00
Salvatore Sanfilippo
590b3157d4 Merge pull request #4418 from soloestoy/fix-multiple-unblock
fix multiple unblock for clientsArePaused()
2018-09-03 18:31:02 +02:00