antirez
b166aff1bf
freeMemoryIfNeeded() small refactoring.
...
Related to issue #5686 and PR #5689 .
2018-12-12 11:37:15 +01:00
antirez
129f2d2746
freeMemoryIfNeeded() small refactoring.
...
Related to issue #5686 and PR #5689 .
2018-12-12 11:37:15 +01:00
antirez
fc4b1319d0
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
antirez
274531396c
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
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
Oran Agra
b587c54c24
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
2093b42879
Streams: XSTREAM SETID -> XSETID.
...
Keep vanilla stream commands at toplevel, see #5426 .
2018-10-16 13:17:14 +02:00
antirez
e3446fea9e
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
Salvatore Sanfilippo
af09df08d7
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
antirez
c9d9ae7baa
Fix propagation of consumer groups last ID.
...
Issue #5433 .
2018-10-10 12:51:02 +02:00
antirez
25119c7069
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
antirez
69c30965eb
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
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
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
8aa0a33dbb
Module cluster flags: initial vars / defines added.
2018-09-19 11:20:52 +02:00
antirez
744fe7f348
Module cluster flags: initial vars / defines added.
2018-09-19 11:20:52 +02:00
antirez
0a77ee90ee
LOLWUT: wrap it into a proper command.
2018-09-12 11:34:10 +02:00
antirez
43385c4375
LOLWUT: wrap it into a proper command.
2018-09-12 11:34:10 +02:00
antirez
90d12c7929
Slave removal: SLAVEOF -> REPLICAOF. SLAVEOF is now an alias.
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
antirez
1ee4350153
Unblocked clients API refactoring. See #4418 .
2018-09-03 18:39:18 +02:00
antirez
6c001bfc0d
Unblocked clients API refactoring. See #4418 .
2018-09-03 18:39:18 +02:00
antirez
700a94f653
Make pending buffer processing safe for CLIENT_MASTER client.
...
Related to #5305 .
2018-09-03 18:17:31 +02:00
antirez
3e7349fdaf
Make pending buffer processing safe for CLIENT_MASTER client.
...
Related to #5305 .
2018-09-03 18:17:31 +02:00
antirez
b0143d81f3
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
antirez
067647a783
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
22f822a340
Merge pull request #5248 from soloestoy/rewrite-brpoplpush
...
rewrite BRPOPLPUSH as RPOPLPUSH to propagate
2018-08-26 16:31:24 +02:00
Salvatore Sanfilippo
19880ab851
Merge pull request #5248 from soloestoy/rewrite-brpoplpush
...
rewrite BRPOPLPUSH as RPOPLPUSH to propagate
2018-08-26 16:31:24 +02:00
zhaozhao.zz
8613125969
block: rewrite BRPOPLPUSH as RPOPLPUSH to propagate
2018-08-14 20:58:58 +08:00
zhaozhao.zz
8a1219d93b
block: rewrite BRPOPLPUSH as RPOPLPUSH to propagate
2018-08-14 20:58:58 +08:00
zhaozhao.zz
eca47868f0
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
zhaozhao.zz
14c4ddb5a6
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
c42b48d349
Merge pull request #5189 from soloestoy/refactor-dbOverwrite
...
refactor dbOverwrite to make lazyfree work
2018-07-31 16:40:35 +02:00
Salvatore Sanfilippo
92b39a0abf
Merge pull request #5189 from soloestoy/refactor-dbOverwrite
...
refactor dbOverwrite to make lazyfree work
2018-07-31 16:40:35 +02:00
antirez
ca20e19104
Introduce writeCommandsDeniedByDiskError().
2018-07-31 13:09:38 +02:00
antirez
5401fe7fb9
Introduce writeCommandsDeniedByDiskError().
2018-07-31 13:09:38 +02:00
zhaozhao.zz
f2a10a9536
refactor dbOverwrite to make lazyfree work
2018-07-31 12:07:57 +08:00
zhaozhao.zz
fddeeae724
refactor dbOverwrite to make lazyfree work
2018-07-31 12:07:57 +08:00
antirez
6eae385b74
Control dynamic HZ via server configuration.
2018-07-30 13:37:30 +02:00
antirez
c426d85c4c
Control dynamic HZ via server configuration.
2018-07-30 13:37:30 +02:00
antirez
6d60062a7b
Merge branch 'dynamic-hz' into unstable
2018-07-30 13:31:23 +02:00
antirez
4e9c30a6ca
Merge branch 'dynamic-hz' into unstable
2018-07-30 13:31:23 +02:00
Salvatore Sanfilippo
a5f07a06f4
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
Salvatore Sanfilippo
445a2a2b1b
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
3d32af7ec6
Dynamic HZ: adapt cron frequency to number of clients.
2018-07-23 14:21:04 +02:00
antirez
b65ddfb16a
Dynamic HZ: adapt cron frequency to number of clients.
2018-07-23 14:21:04 +02:00
antirez
6bfbad38af
Dynamic HZ: separate hz from the configured hz.
...
This way we can remember what the user configured HZ is, but change the
actual HZ dynamically if needed in the dynamic HZ feature
implementation.
2018-07-23 14:13:58 +02:00
antirez
e6ea603ad3
Dynamic HZ: separate hz from the configured hz.
...
This way we can remember what the user configured HZ is, but change the
actual HZ dynamically if needed in the dynamic HZ feature
implementation.
2018-07-23 14:13:58 +02:00