antirez
44dbf235c6
ACL: command categories added to the command table.
2019-01-23 12:15:10 +01:00
antirez
01a1c01bc1
ACL: improve top comments of the command table.
2019-01-23 11:21:02 +01:00
antirez
7f158ed439
ACL: mark more commands as read-only commands.
2019-01-23 11:14:39 +01:00
antirez
f1e7266c85
ACL: remove no longer existing flag from comment.
2019-01-22 17:57:20 +01:00
antirez
91a4de033a
ACL: populate command table with new flags.
2019-01-22 17:57:20 +01:00
antirez
4ea77e957d
ACL: review of Redis command table and new flags format.
...
However the code is yet not able to parse the new flags format.
2019-01-22 17:57:20 +01:00
antirez
b2d5ed373a
ACL: specify better the command denied error.
2019-01-22 17:57:20 +01:00
antirez
23abe9612a
Refactoring: always kill AOF/RDB child via helper functions.
2019-01-21 11:28:44 +01:00
antirez
4261b70f8d
ACL: remove server.requirepass + some refactoring.
2019-01-18 11:49:30 +01:00
antirez
7e73a1fbf3
ACL: AUTH + no default user password raises an error.
...
This way the behavior is very similar to the past one.
This is useful in order to remember the user she probably failed to
configure a password correctly.
2019-01-17 18:30:23 +01:00
antirez
a7ea1e7a2f
ACL: change requirepass stop condition to use ACLs.
2019-01-17 18:22:22 +01:00
antirez
dabd1e3bbb
ACL: fix and improve ACL key checking.
2019-01-16 18:31:05 +01:00
antirez
2906e9c196
ACL: fix command exec check by returning.
2019-01-15 18:28:43 +01:00
antirez
57fa4a2f01
ACL: AUTH command new form, using the ACL subsystem.
2019-01-15 13:45:16 +01:00
antirez
4d8991fdf4
ACL: initial implementation of the ACL command.
2019-01-15 09:36:12 +01:00
antirez
53053f5f30
ACL: Fix compilation by adding prototype and c->cmd fix.
2019-01-14 13:22:56 +01:00
antirez
b9e5d4f575
ACL: Add hook in processCommand() to check the ACLs before call().
2019-01-14 13:20:45 +01:00
antirez
4890c2f5e9
ACL: modify comment from PR.
2019-01-11 11:30:09 +01:00
charsyam
e1ff6ef8e7
fix segmentfault when server start
2019-01-11 19:12:06 +09:00
antirez
e75a2b8500
ACL: initialization function.
2019-01-10 16:39:32 +01:00
antirez
cc5222bd7a
ACL: use a fixed table for command IDs.
2019-01-09 21:31:29 +01:00
antirez
647a157eac
ACL: set the command ID while populating the commands table.
2019-01-09 17:23:23 +01:00
antirez
a571c99587
ACL: introduce the concept of command ID.
2019-01-09 17:20:47 +01:00
antirez
50927b298e
ACL: fix ACLCheckUserCredentials() usage in AUTH.
2019-01-09 17:09:30 +01:00
antirez
106977aaf9
ACL: refactoring of the original authentication code.
2019-01-09 17:00:30 +01:00
antirez
79c3d1355d
RESP3: allow HELLO during busy script and not authenticated states.
2019-01-09 17:00:30 +01:00
antirez
26007b980a
RESP3: Allow any command in RESP3 Pub/Sub mode.
2019-01-09 17:00:30 +01:00
antirez
736d38cf88
RESP3: PING should reply normally in RESP3 Pub/Sub mode.
...
Because in RESP3 commands can be sent in the Pub/Sub connection without
problems, so it's better if in such mode there is no exception about
PING.
2019-01-09 17:00:30 +01:00
antirez
75a6d12dd0
RESP3: initial implementation of the HELLO command.
2019-01-09 17:00:29 +01:00
antirez
d266105a45
RESP3: add shared.nullarray for better RESP2 compat.
2019-01-09 17:00:29 +01:00
antirez
7872d57d27
RESP3: most null replies converted.
2019-01-09 17:00:29 +01:00
antirez
8413c6f107
RESP3: addReplyNull() added.
2019-01-09 17:00:29 +01:00
antirez
a039a1bc3c
RESP3: remove other pointless shared object.
2019-01-09 17:00:29 +01:00
antirez
ee2564e90e
RESP3: remove certain constants to spot places to fix.
2019-01-09 17:00:29 +01:00
antirez
33374b02bf
RESP3: Use new deferred len API in server.c.
2019-01-09 17:00:29 +01:00
antirez
b166aff1bf
freeMemoryIfNeeded() small refactoring.
...
Related to issue #5686 and PR #5689 .
2018-12-12 11:37:15 +01:00
Salvatore Sanfilippo
d21f7e44ea
Merge pull request #5633 from oranagra/frag_bytes_signed
...
fix #5580 , display fragmentation and rss overhead bytes as signed
2018-12-07 17:09:10 +01:00
antirez
50c8580a33
Remove no longer relevant comment in processCommand().
2018-12-07 17:06:55 +01:00
Oran Agra
1dbdef57cd
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
Salvatore Sanfilippo
307ef33b65
Merge pull request #5597 from lamby/clarify-socket-creation-error-message
...
Clarify the "Creating Server TCP listening socket" error message
2018-11-28 17:06:51 +01:00
Chris Lamb
99c2604541
Don't treat unsupported protocols as fatal errors
...
If we encounter an unsupported protocol in the "bind" list, don't
ipso-facto consider it a fatal error. We continue to abort startup if
there are no listening sockets at all.
This ensures that the lack of IPv6 support does not prevent Redis from
starting on Debian where we try to bind to the ::1 interface by default
(via "bind 127.0.0.1 ::1"). A machine with IPv6 disabled (such as some
container systems) would simply fail to start Redis after the initiall
call to apt(8).
This is similar to the case for where "bind" is not specified:
https://github.com/antirez/redis/issues/3894
... and was based on the corresponding PR:
https://github.com/antirez/redis/pull/4108
... but also adds EADDRNOTAVAIL to the list of errors to catch which I
believe is missing from there.
This issue was raised in Debian as both <https://bugs.debian.org/900284 >
& <https://bugs.debian.org/914354 >.
2018-11-23 18:01:12 +01:00
Chris Lamb
be459c7e26
Clarify the "Creating Server TCP listening socket" error.
...
This really helps spot it in the logs, otherwise it does not look like a
warning/error. For example:
Creating Server TCP listening socket ::1:6379: bind: Cannot assign requested address
... is not nearly as clear as:
Could not create server TCP listening listening socket ::1:6379: bind: Cannot assign requested address
2018-11-23 17:57:01 +01:00
valentino
dcc2c9babe
fix short period of server.hz being uninitialized
...
server.hz was uninitialized between initServerConfig and initServer.
this can lead to someone (e.g. queued modules) doing createObject,
and accessing an uninitialized variable, that can potentially be 0,
and lead to a crash.
2018-11-05 12:01:26 +02:00
David Carlier
869612a867
Fix non Linux build.
...
timezone global is a linux-ism whereas it is a function under BSD.
Here a helper to get the timezone value in a more portable manner.
2018-10-26 14:02:09 +00:00
zhaozhao.zz
c0d1b24d27
MULTI: OOM err if cannot free enough memory in MULTI/EXEC context
2018-10-17 16:40:45 +08:00
Salvatore Sanfilippo
707138d5c1
Merge pull request #5333 from soloestoy/stream-commands-flag
...
Scripting & Streams: some commands need right flags
2018-10-17 07:50:32 +02:00
antirez
2093b42879
Streams: XSTREAM SETID -> XSETID.
...
Keep vanilla stream commands at toplevel, see #5426 .
2018-10-16 13:17:14 +02:00
Salvatore Sanfilippo
060cd5c941
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
599e872fba
Fix propagation of consumer groups last ID.
...
Issue #5433 .
2018-10-10 12:51:02 +02:00
zhaozhao.zz
0a968cc348
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