antirez
c17fa9ba7b
ACL: Fix compilation by adding prototype and c->cmd fix.
2019-01-14 13:22:56 +01:00
antirez
15748e1fe0
ACL: ACLLCOMMAND flags.
2019-01-14 13:21:21 +01:00
antirez
8df5007346
ACL: avoid a radix tree lookup for the default user.
2019-01-11 11:32:41 +01:00
antirez
b532a16298
ACL: implement ACLCreateUser().
2019-01-10 17:01:12 +01:00
antirez
1d176f0f0e
ACL: initialization function.
2019-01-10 16:39:32 +01:00
antirez
33ff2b2f35
ACL: add a reference to the user in each client.
2019-01-10 16:34:13 +01:00
antirez
4a3b37a7a7
ACL: improved version of the user structure.
2019-01-10 12:47:52 +01:00
antirez
6f25143af6
ACL: use a fixed table for command IDs.
2019-01-09 21:31:29 +01:00
antirez
5151f74fe1
ACL: introduce the concept of command ID.
2019-01-09 17:20:47 +01:00
antirez
4d33fe81cd
ACL: refactoring of the original authentication code.
2019-01-09 17:00:30 +01:00
antirez
89b7b6a917
RESP3: addReplyString() -> addReplyProto().
...
The function naming was totally nuts. Let's fix it as we break PRs
anyway with RESP3 refactoring and changes.
2019-01-09 17:00:30 +01:00
antirez
78a3a19b2c
RESP3: verbatim reply API + DEBUG PROTOCOL support.
2019-01-09 17:00:30 +01:00
antirez
a6ead03510
RESP3: addReplyBool() implemented.
2019-01-09 17:00:29 +01:00
antirez
bf3d7bbf31
RESP3: initial implementation of the HELLO command.
2019-01-09 17:00:29 +01:00
antirez
f47004f589
RESP3: restore the concept of null array for RESP2 compat.
2019-01-09 17:00:29 +01:00
antirez
83ad63732e
RESP3: add shared.nullarray for better RESP2 compat.
2019-01-09 17:00:29 +01:00
antirez
8ecf7693bf
RESP3: addReplyNullArray() added for better RESP2 compat.
2019-01-09 17:00:29 +01:00
antirez
c8304b099d
RESP3: most null replies converted.
2019-01-09 17:00:29 +01:00
antirez
29bbe91392
RESP3: addReplyNull() added.
2019-01-09 17:00:29 +01:00
antirez
e30fef5d8a
RESP3: remove other pointless shared object.
2019-01-09 17:00:29 +01:00
antirez
5ebe3268ed
RESP3: remove certain constants to spot places to fix.
2019-01-09 17:00:29 +01:00
antirez
56c95799a3
RESP3: bring RESP2 compatibility to previous changes.
2019-01-09 17:00:29 +01:00
antirez
e6a467814a
RESP3: addReply*Len() support for RESP2 backward comp.
2019-01-09 17:00:29 +01:00
antirez
9325d288f6
RESP3: put RESP version in the client structure.
2019-01-09 17:00:29 +01:00
antirez
036e10dcb9
RESP3: Use new deferred len API in server.c.
2019-01-09 17:00:29 +01:00
antirez
689949fb30
RESP3: Aggregate deferred lengths functions.
2019-01-09 17:00:29 +01:00
antirez
421c242dd0
freeMemoryIfNeeded() small refactoring.
...
Related to issue #5686 and PR #5689 .
2018-12-12 11:37:15 +01:00
antirez
83b0df508c
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
Oran Agra
bad0b20979
fix #5580 , display fragmentation and rss overhead bytes as signed
...
these metrics become negative when RSS is smaller than the used_memory.
This can easily happen when the program allocated a lot of memory and haven't
written to it yet, in which case the kernel doesn't allocate any pages to the process
2018-12-02 15:29:20 +02:00
antirez
8e399f0e01
Streams: XSTREAM SETID -> XSETID.
...
Keep vanilla stream commands at toplevel, see #5426 .
2018-10-16 13:17:14 +02:00
Salvatore Sanfilippo
ff1b36c825
Merge pull request #5426 from soloestoy/feature-xstream
...
Bugfix data inconsistency after aof rewrite, and add XSTREAM command.
2018-10-16 13:10:36 +02:00
antirez
b10d99a13b
Fix propagation of consumer groups last ID.
...
Issue #5433 .
2018-10-10 12:51:02 +02:00
antirez
4e851f8044
Introduce protectClient() + some refactoring.
...
The idea is to have an API for the cases like -BUSY state and DEBUG
RELOAD where we have to manually deinstall the read handler.
See #4804 .
2018-10-09 13:15:41 +02:00
zhaozhao.zz
7e2c73d79b
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
96ceafbe4d
Module cluster flags: initial vars / defines added.
2018-09-19 11:20:52 +02:00
antirez
55d85db425
LOLWUT: wrap it into a proper command.
2018-09-12 11:34:10 +02:00
antirez
bdca5b9be5
Slave removal: SLAVEOF -> REPLICAOF. SLAVEOF is now an alias.
2018-09-11 15:32:28 +02:00
antirez
02306736c9
Unblocked clients API refactoring. See #4418 .
2018-09-03 18:39:18 +02:00
antirez
f0348a6543
Make pending buffer processing safe for CLIENT_MASTER client.
...
Related to #5305 .
2018-09-03 18:17:31 +02:00
antirez
d85194c4e1
Introduce repl_slave_ignore_maxmemory flag internally.
...
Note: this breaks backward compatibility with Redis 4, since now slaves
by default are exact copies of masters and do not try to evict keys
independently.
2018-08-27 12:20:27 +02:00
Salvatore Sanfilippo
38bcee980a
Merge pull request #5248 from soloestoy/rewrite-brpoplpush
...
rewrite BRPOPLPUSH as RPOPLPUSH to propagate
2018-08-26 16:31:24 +02:00
zhaozhao.zz
b448b16718
block: rewrite BRPOPLPUSH as RPOPLPUSH to propagate
2018-08-14 20:58:58 +08:00
zhaozhao.zz
59c4b6bf00
pipeline: do not sdsrange querybuf unless all commands processed
...
This is an optimization for processing pipeline, we discussed a
problem in issue #5229 : clients may be paused if we apply `CLIENT
PAUSE` command, and then querybuf may grow too large, the cost of
memmove in sdsrange after parsing a completed command will be
horrible. The optimization is that parsing all commands in queyrbuf
, after that we can just call sdsrange only once.
2018-08-14 00:43:42 +08:00
Salvatore Sanfilippo
b1092d1424
Merge pull request #5189 from soloestoy/refactor-dbOverwrite
...
refactor dbOverwrite to make lazyfree work
2018-07-31 16:40:35 +02:00
antirez
8442c25722
Introduce writeCommandsDeniedByDiskError().
2018-07-31 13:09:38 +02:00
zhaozhao.zz
b880a352d6
refactor dbOverwrite to make lazyfree work
2018-07-31 12:07:57 +08:00
antirez
1a722347b0
Control dynamic HZ via server configuration.
2018-07-30 13:37:30 +02:00
antirez
f3bf122c28
Merge branch 'dynamic-hz' into unstable
2018-07-30 13:31:23 +02:00
Salvatore Sanfilippo
63171b81b0
Merge pull request #4883 from itamarhaber/lua_scripts-in-info-memory
...
Adds memory information about the scripts' cache to INFO
2018-07-23 18:43:05 +02:00
antirez
89c6c7bd88
Dynamic HZ: adapt cron frequency to number of clients.
2018-07-23 14:21:04 +02:00