John Sully
aaff167eb9
race calculating client overhead
...
Former-commit-id: 2d27c8ecdb5242284301f135b1d542f9ead5b8f2
2020-05-24 01:53:43 -04:00
John Sully
3813d5835e
During RDB load we can only handle clients on the main thread as our workers are not yet created. This change also unifies the accept logic across the socket types
...
Former-commit-id: 59cda9cfb96eca55c4b445309970bd95277ebc5c
2020-05-23 16:03:24 -04:00
John Sully
3c0e1a1baf
Diskless replication handler needs to run on the main thread
...
Former-commit-id: 091af6400348b7716f7fe0bc845bf7f16d922815
2020-05-23 15:15:42 -04:00
ShooterIT
646cc81c96
Fix reply bytes calculation error
...
Fix #7275 .
Former-commit-id: a12210c87561fed5522c9a6e8db6d8606cabe3bf
2020-05-23 13:02:55 -04:00
John Sully
36032618b2
Merge tag '6.0.3' into unstable
...
Redis 6.0.3
Former-commit-id: 43649fc5b4425fb05e2c1aa48da7c07bc83ce24d
2020-05-22 16:53:10 -04:00
John Sully
c86b45c6a0
Merge branch 'unstable' of https://github.com/JohnSully/KeyDB into unstable
...
Former-commit-id: 01cc25653ab7d797f6a466f18d540517d5003f5f
2020-05-22 16:45:27 -04:00
John Sully
fa0be83fd9
Merge tag '6.0.2' into unstable
...
Redis 6.0.2
Former-commit-id: a010e4a4b2cc2bcad1cb14604b7ebc596c35b05e
2020-05-22 16:45:18 -04:00
John Sully
c03e9a3e2c
Merge commit 'e834acb91c89d083d0075e320dea6ad7188f2d0d' into unstable
...
Former-commit-id: 817a11ff110772893eda0675912bbb0cfc1fca74
2020-05-22 15:56:35 -04:00
John Sully
bd3deb6c67
Merge commit '05b332e550e7ce32e364dde6cdd8820e8665eb21' into unstable
...
Former-commit-id: c52e1fc78c369843e49a22765bed2c53e99d9709
2020-05-22 15:42:50 -04:00
John Sully
5a7ce664d0
Merge commit '78cbd3039858407837632bc37abb36e36ec60ce5' into unstable
...
Former-commit-id: d74871da40dea11bd1a226fbecb0974ff5f8ec8c
2020-05-22 15:36:44 -04:00
John Sully
1ee6c44a96
Update README.md
...
Former-commit-id: a25cf15ecd6e7a013f4b653b3b103c9e9227af3a
2020-05-22 14:03:29 -04:00
Madelyn Olson
8802cbbcde
EAGAIN for tls during diskless load
2020-05-22 12:37:59 +02:00
Qu Chen
5d59bbb6d9
Disconnect chained replicas when the replica performs PSYNC with the master always to avoid replication offset mismatch between master and chained replicas.
2020-05-22 12:37:59 +02:00
hwware
08c70f7dce
using moreargs variable
2020-05-22 12:37:59 +02:00
hwware
5c70dab9fc
fix server crash for STRALGO command
2020-05-22 12:37:49 +02:00
ShooterIT
e60f63a718
Replace addDeferredMultiBulkLength with addReplyDeferredLen in comment
2020-05-22 12:37:49 +02:00
Yossi Gottlieb
26143c2936
TLS: Improve tls-protocols clarity in redis.conf.
2020-05-22 12:37:49 +02:00
ShooterIT
9d1265240f
Fix reply bytes calculation error
...
Fix #7275 .
2020-05-22 12:37:49 +02:00
zhaozhao.zz
830c674845
Tracking: flag CLIENT_TRACKING_BROKEN_REDIR when redir broken
2020-05-22 12:37:49 +02:00
Oran Agra
56d63f4d7d
fix a rare active defrag edge case bug leading to stagnation
...
There's a rare case which leads to stagnation in the defragger, causing
it to keep scanning the keyspace and do nothing (not moving any
allocation), this happens when all the allocator slabs of a certain bin
have the same % utilization, but the slab from which new allocations are
made have a lower utilization.
this commit fixes it by removing the current slab from the overall
average utilization of the bin, and also eliminate any precision loss in
the utilization calculation and move the decision about the defrag to
reside inside jemalloc.
and also add a test that consistently reproduce this issue.
2020-05-22 12:37:49 +02:00
Oran Agra
4f8e19f877
improve DEBUG MALLCTL to be able to write to write only fields.
...
also support:
debug mallctl-str thread.tcache.flush VOID
2020-05-22 12:37:49 +02:00
hujie
6bb5b6d942
fix clear USER_FLAG_ALLCOMMANDS flag in acl
...
in ACLSetUserCommandBit, when the command bit overflows, no operation
is performed, so no need clear the USER_FLAG_ALLCOMMANDS flag.
in ACLSetUser, when adding subcommand, we don't need to call
ACLGetCommandID ahead since subcommand may be empty.
2020-05-22 12:37:49 +02:00
ShooterIT
2478a83ce7
Redis Benchmark: generate random test data
...
The function of generating random data is designed by antirez. See #7196 .
2020-05-22 12:37:49 +02:00
hwware
3ffb3ac7ea
Redis-Benchmark: avoid potentical memmory leaking
2020-05-22 12:37:49 +02:00
WuYunlong
65de5a1a7d
Handle keys with hash tag when computing hash slot using tcl cluster client.
2020-05-22 12:37:49 +02:00
WuYunlong
71036d4cdb
Add a test to prove current tcl cluster client can not handle keys with hash tag.
2020-05-22 12:37:49 +02:00
ShooterIT
e113af7448
Use dictSize to get the size of dict in dict.c
2020-05-22 12:37:49 +02:00
Madelyn Olson
1d84b89fb6
Converge hash validation for adding and removing
2020-05-22 12:37:49 +02:00
Benjamin Sergeant
5d88c23555
do not handle --cluster-yes for cluster fix mode
2020-05-22 12:37:49 +02:00
Benjamin Sergeant
dc2f7e0ad7
fix typo ...
2020-05-22 12:37:49 +02:00
Benjamin Sergeant
902e82efd2
Redis-cli 6.0.1 --cluster-yes
doesn't work ( fix #7246 )
...
This make it so that all prompts for all redis-cli --cluster commands are automatically answered with a yes.
2020-05-22 12:37:49 +02:00
Oran Agra
7d8259d151
fix valgrind test failure in replication test
...
in 00323f342 i added more keys to that test to make it run longer
but in valgrind this now means the test times out, give valgrind more
time.
2020-05-22 12:37:49 +02:00
Oran Agra
5e75739bfd
add regression test for the race in #7205
...
with the original version of 6.0.0, this test detects an excessive full
sync.
with the fix in 146201c69, this test detects memory corruption,
especially when using libc allocator with or without valgrind.
2020-05-22 12:37:49 +02:00
antirez
3d478f2e3f
Improve the PSYNC2 test reliability.
2020-05-22 12:37:49 +02:00
John Sully
2fa3fb9573
Merge tag '6.0.1' into unstable
...
Redis 6.0.1.
Former-commit-id: c505df8830123904da026be2aacbd92a95a5e37c
2020-05-21 23:41:36 -04:00
John Sully
6402c28d5c
Missing noexcept
...
Former-commit-id: f214ada545f810f8a9095753984b75c438cd6464
2020-05-21 23:25:50 -04:00
John Sully
62261642cc
build failure on macos
...
Former-commit-id: c10aa3b8b0811da9931745695c5de06fdfa99fe3
2020-05-21 23:24:34 -04:00
John Sully
193d7c76cb
Fix bad merge in CI.yml
...
Former-commit-id: 6311d709c39b3bacaeab77b18033010f1b548f81
2020-05-21 22:09:06 -04:00
John Sully
e245fdbb89
Merge commit '97e58ee026675e70fbd8843f7a86e98f53a3c791' into unstable
...
Former-commit-id: 8ab77465dbb3c0b1f859f24cdbb461937516eb6a
2020-05-21 19:37:42 -04:00
John Sully
cc8d7c1afd
Merge commit '3b373fbb0b05ee862dfef32199cfb63459019cd9' into unstable
...
Former-commit-id: 201bf73ef772914c56ac680bb9c7fb6a98b218b2
2020-05-21 18:57:28 -04:00
John Sully
ccedb2fa73
Merge commit 'd7b07d3ded06b4cd843baffd3a6d33dd96efd401' into unstable
...
Former-commit-id: 49784c8122e827bd9de86bbae4d88c313400e86e
2020-05-21 18:48:49 -04:00
John Sully
8377df8330
Merge commit '87924d673138531cbaf606015ea7b6a9e3ae2465' into unstable
...
Former-commit-id: 3e03f308b564cd94f4a6407c80792d080e0f83c5
2020-05-21 17:55:09 -04:00
John Sully
327d543f2c
Merge commit 'c5d805f87771581d3f6b29861ed2062c0ae2a688' into unstable
...
Former-commit-id: 95cecb0229af0278cf614ffd746ba829ae7c897c
2020-05-21 17:45:15 -04:00
John Sully
4246199553
Merge commit '7cb94fd6cc9e1ad106964171023457ae3ff0a40b' into unstable
...
Former-commit-id: 7676f5b15f24a044257250b8891d23b14642da48
2020-05-21 17:36:53 -04:00
John Sully
b47d7715a4
Merge commit '71134e357ffd6ced7c40c145205dbbac173ee181' into unstable
...
Former-commit-id: d5b057534a3dbf50f94465332107da2490811946
2020-05-21 17:32:53 -04:00
John Sully
5935707790
Merge commit '2535a172c1247d5d32d6f2fefe51b95c27ba8ae1' into unstable
...
Former-commit-id: 7a15f6dfc7331d6759201137971e7c2965672be8
2020-05-21 17:30:56 -04:00
John Sully
903aeda836
Override missing new, fix new/delete mismatch
...
Former-commit-id: 712d825c233c3ebbc49b22b8c1865916ca9dc3bc
2020-05-20 15:57:08 -04:00
antirez
8ca98ae414
Redis 6.0.3.
2020-05-16 18:11:58 +02:00
antirez
ae73a26f14
Remove the client from CLOSE_ASAP list before caching the master.
...
This was broken in 146201c: we identified a crash in the CI, what
was happening before the fix should be like that:
1. The client gets in the async free list.
2. However freeClient() gets called again against the same client
which is a master.
3. The client arrived in freeClient() with the CLOSE_ASAP flag set.
4. The master gets cached, but NOT removed from the CLOSE_ASAP linked
list.
5. The master client that was cached was immediately removed since it
was still in the list.
6. Redis accessed a freed cached master.
This is how the crash looked like:
=== REDIS BUG REPORT START: Cut & paste starting from here ===
1092:S 16 May 2020 11:44:09.731 # Redis 999.999.999 crashed by signal: 11
1092:S 16 May 2020 11:44:09.731 # Crashed running the instruction at: 0x447e18
1092:S 16 May 2020 11:44:09.731 # Accessing address: 0xffffffffffffffff
1092:S 16 May 2020 11:44:09.731 # Failed assertion: (:0)
------ STACK TRACE ------
EIP:
src/redis-server 127.0.0.1:21300(readQueryFromClient+0x48)[0x447e18]
And the 0xffff address access likely comes from accessing an SDS that is
set to NULL (we go -1 offset to read the header).
2020-05-16 18:04:17 +02:00
antirez
38cc6cbbb4
Redis 6.0.2.
2020-05-15 22:29:52 +02:00