Daniel Dai
4ece8bd7a7
fix move command
2019-11-19 00:02:45 -05:00
John Sully
a60925c949
Final design of forkless background save. expires NYI
...
Former-commit-id: e2dc24b441bf52b181c820c853e0bc7524254f3f
2019-11-18 19:47:12 -05:00
John Sully
b51ece810f
Final design of forkless background save. expires NYI
...
Former-commit-id: e2dc24b441bf52b181c820c853e0bc7524254f3f
2019-11-18 19:47:12 -05:00
John Sully
a9f20f0a38
Merge branch 'unstable' into advanced_db
...
Former-commit-id: 7530d93cd5c4a9fc4e6466abcf96edbdd8daea9e
2019-11-18 15:22:17 -05:00
John Sully
331f38b94e
Merge branch 'unstable' into advanced_db
...
Former-commit-id: 7530d93cd5c4a9fc4e6466abcf96edbdd8daea9e
2019-11-18 15:22:17 -05:00
antirez
25415849e9
Expire cycle: document expire effort in redis.conf.
2019-11-18 18:11:38 +01:00
antirez
3243252cb0
Expire cycle: document expire effort in redis.conf.
2019-11-18 18:11:38 +01:00
antirez
2772453296
Expire cycle: set a buckets limit as well.
2019-11-18 17:47:19 +01:00
antirez
e8ceba4e64
Expire cycle: set a buckets limit as well.
2019-11-18 17:47:19 +01:00
antirez
833b43ceff
Expire cycle: fix parameters computation.
2019-11-18 11:43:42 +01:00
antirez
2ab51a644d
Expire cycle: fix parameters computation.
2019-11-18 11:43:42 +01:00
antirez
c7d07138c7
Expire cycle: make expire effort configurable.
2019-11-18 11:33:44 +01:00
antirez
1ccc270a2c
Expire cycle: make expire effort configurable.
2019-11-18 11:33:44 +01:00
antirez
d4f31e0d5f
Expire cycle: introduce configurable effort.
2019-11-18 11:30:05 +01:00
antirez
84b01f63db
Expire cycle: introduce configurable effort.
2019-11-18 11:30:05 +01:00
John Sully
d46d4cd9ef
Fix failure to wakeup from futex sleep due to fastlock_unlock reading the wrong offset in the asm version. Also fix false sharing in spinlock
...
Former-commit-id: 4c8603815cf525c75dcc360fddeab9ca6fe70ae6
2019-11-17 16:06:49 -05:00
John Sully
72bbf16c2f
Fix failure to wakeup from futex sleep due to fastlock_unlock reading the wrong offset in the asm version. Also fix false sharing in spinlock
...
Former-commit-id: 4c8603815cf525c75dcc360fddeab9ca6fe70ae6
2019-11-17 16:06:49 -05:00
John Sully
831fa24a18
Revert "Debug sleep should apply to all threads"
...
This reverts commit a2d4f4969fbc544ce75de5b96b94f79ce929fb7d [formerly 41b678814b2c2ff93935b57e630028aaf2e9ae62].
Former-commit-id: 3ae75c2d2bd952d0a075b9ba257a08f962fe0739
2019-11-17 15:39:47 -05:00
John Sully
a27c1c9f0a
Revert "Debug sleep should apply to all threads"
...
This reverts commit b8cc7e2b9c9223de33c1d6513decb80261998461 [formerly 41b678814b2c2ff93935b57e630028aaf2e9ae62].
Former-commit-id: 3ae75c2d2bd952d0a075b9ba257a08f962fe0739
2019-11-17 15:39:47 -05:00
John Sully
22253da5c9
Improve perf of reading cluster bitfield
...
Former-commit-id: 9371c005aa7ffc2060b1b787e4268bc25336ca15
2019-11-17 14:52:12 -05:00
John Sully
baffeff5c7
Improve perf of reading cluster bitfield
...
Former-commit-id: 9371c005aa7ffc2060b1b787e4268bc25336ca15
2019-11-17 14:52:12 -05:00
antirez
eecf9c87c0
Expire cycle: tollerate less stale keys, expire cycle CPU in INFO.
2019-11-15 11:29:34 +01:00
antirez
2766805680
Expire cycle: tollerate less stale keys, expire cycle CPU in INFO.
2019-11-15 11:29:34 +01:00
antirez
545109470a
Expire cycle: scan hash table buckets directly.
2019-11-15 10:53:19 +01:00
antirez
ffc7e509aa
Expire cycle: scan hash table buckets directly.
2019-11-15 10:53:19 +01:00
John Sully
29b52ca5ce
Merge branch 'unstable' of https://github.com/JohnSully/KeyDB into unstable
...
Former-commit-id: 16bd6b3f5d6f8d45c7a7202bd34974b31da2fdec
2019-11-14 21:21:46 -05:00
John Sully
c34fee9ed4
Merge branch 'unstable' of https://github.com/JohnSully/KeyDB into unstable
...
Former-commit-id: 16bd6b3f5d6f8d45c7a7202bd34974b31da2fdec
2019-11-14 21:21:46 -05:00
John Sully
8c6f775cf7
Cluster multithreading fixes
...
Former-commit-id: 3dd78a6101df0a980e520dcb55d80651bfc5a3a7
2019-11-14 20:14:24 -05:00
John Sully
a098681bbf
Cluster multithreading fixes
...
Former-commit-id: 3dd78a6101df0a980e520dcb55d80651bfc5a3a7
2019-11-14 20:14:24 -05:00
John Sully
a2d4f4969f
Debug sleep should apply to all threads
...
Former-commit-id: 41b678814b2c2ff93935b57e630028aaf2e9ae62
2019-11-14 19:57:29 -05:00
John Sully
b8cc7e2b9c
Debug sleep should apply to all threads
...
Former-commit-id: 41b678814b2c2ff93935b57e630028aaf2e9ae62
2019-11-14 19:57:29 -05:00
John Sully
7dac41ed72
killing clients should take effect ASAP
...
Former-commit-id: d0ccb074d5451cd457fe88efeb007cdb9746cb7f
2019-11-14 19:49:32 -05:00
John Sully
93844525ea
killing clients should take effect ASAP
...
Former-commit-id: d0ccb074d5451cd457fe88efeb007cdb9746cb7f
2019-11-14 19:49:32 -05:00
John Sully
b5ba20fe1b
Improve AE Assert message
...
Former-commit-id: cb0fc7cca2406cf24fc238d6b6e1247c60d86704
2019-11-14 19:34:13 -05:00
John Sully
451c6e81f4
Improve AE Assert message
...
Former-commit-id: cb0fc7cca2406cf24fc238d6b6e1247c60d86704
2019-11-14 19:34:13 -05:00
antirez
688dbb4ae3
Expire cycle: introduce the new state needed for the new algo.
2019-11-14 18:28:01 +01:00
antirez
2f6fe5ce3a
Expire cycle: introduce the new state needed for the new algo.
2019-11-14 18:28:01 +01:00
antirez
df7f6bf4c2
Rax library updated.
2019-11-14 12:48:54 +01:00
antirez
8d50a8327e
Rax library updated.
2019-11-14 12:48:54 +01:00
Oran Agra
10a834b48e
Slightly more efficient RM_ReplyWithEmptyString
...
trimming talk about RESP protocol from API docs (should be independent to that anyway)
2019-11-14 09:46:46 +02:00
Oran Agra
c426bbf3a5
Slightly more efficient RM_ReplyWithEmptyString
...
trimming talk about RESP protocol from API docs (should be independent to that anyway)
2019-11-14 09:46:46 +02:00
Oran Agra
c657b24c83
module docs, missing LOADING flag
2019-11-14 09:09:10 +02:00
Oran Agra
2d30afc45f
module docs, missing LOADING flag
2019-11-14 09:09:10 +02:00
Yossi Gottlieb
bf0931b57c
Add RM_ModuleTypeReplaceValue.
...
This is a light-weight replace function, useful for use cases such as
realloc()ing an existing value, etc. Using RM_ModuleTypeSetValue() in
such cases is wasteful and complex as it attempts to delete the old
value, call its destructor, etc.
2019-11-14 08:50:11 +02:00
Yossi Gottlieb
9c76875f41
Add RM_ModuleTypeReplaceValue.
...
This is a light-weight replace function, useful for use cases such as
realloc()ing an existing value, etc. Using RM_ModuleTypeSetValue() in
such cases is wasteful and complex as it attempts to delete the old
value, call its destructor, etc.
2019-11-14 08:50:11 +02:00
Guy Benoish
181ae55753
XADD with ID 0-0 stores an empty key
...
Calling XADD with 0-0 or 0 would result in creating an
empty key and storing it in the database.
Even worse, because XADD will reply with error the action
will not be replicated, creating a master-replica
inconsistency
2019-11-13 16:47:30 +05:30
Guy Benoish
4a12047c61
XADD with ID 0-0 stores an empty key
...
Calling XADD with 0-0 or 0 would result in creating an
empty key and storing it in the database.
Even worse, because XADD will reply with error the action
will not be replicated, creating a master-replica
inconsistency
2019-11-13 16:47:30 +05:30
喜欢兰花山丘
0b6feb1524
Update adlist.h
...
Update listGetFree keep format consistent
2019-11-13 10:14:45 +08:00
喜欢兰花山丘
253d9d6d12
Update adlist.h
...
Update listGetFree keep format consistent
2019-11-13 10:14:45 +08:00
Oran Agra
eac0e6094e
Adjustments for active defrag defaults and tuning
...
Reduce default minimum effort, so that when fragmentation is just detected,
the impact on the latency will be minor.
Reduce the default maximum effort, mainly to prevent a case were a sudden
massive deletions, won't trigger an aggressive defrag that will cause latency.
When activedefrag is disabled mid-run, reset the 'running' info field, and
clear the scan cursor, so that when it'll be re-enabled, a new fresh scan will
start.
Clearing the 'running' variable is important since lowering the defragger
tunables mid-scan won't help, the defragger only considers new threshold when
a new scan starts, and during a scan it can only become more aggressive,
(when more severe fragmentation is detected), it'll never go less aggressive.
So by temporarily disabling activedefrag, one can lower th the tunables.
Removing the experimantal warning.
2019-11-12 15:05:29 +02:00