9628 Commits

Author SHA1 Message Date
John Sully
b0d9d3bc09 run when necessary
Former-commit-id: d724e7226c690fdce0e6ee6cbf8afdb9481f51c5
2020-10-16 07:00:03 +00:00
John Sully
b5074e9b1e Fix replica buffer overflows
Former-commit-id: 738c782f02517744662991091beb3f724661317e
2020-10-16 06:47:40 +00:00
John Sully
2b1dee4191 Avoid locking if we won't run a time event
Former-commit-id: 33b05c859afd6665feae43c47d19f7a0a764c36b
2020-10-16 06:19:52 +00:00
John Sully
a9f4c37604 Reduce async write copies
Former-commit-id: ed369d722335ed4105748ef2bed5d64f3f32c433
2020-10-15 23:10:17 +00:00
John Sully
665a9ed7c6 Fix branding
Former-commit-id: fb32bb12b1b070d230f89845b0415b1e7d8bc669
2020-10-15 20:15:35 +00:00
John Sully
bfe4b6d1aa Relax memory order where possible
Former-commit-id: 3e996035ea1d5a40d02f84e916837a1d350b844b
2020-10-13 06:35:16 +00:00
John Sully
b2b72ff412 Significantly improve perf in replication scenarios
Former-commit-id: ae8a94d6158cada41b7497d55fe12f5d776f0c75
2020-10-12 15:27:03 +00:00
John Sully
239d874f1f Avoid excess locking, seeing up to 8% performance improvements
Former-commit-id: 69a74a567bd381a84e71f954d4cb35eb878f6d3c
2020-10-12 05:50:58 +00:00
John Sully
2983ffe139 Perf: remove unnecessary vector operations
Former-commit-id: 1b46d4f09ab73e08a1e77fd7f73d18e98dbdce7c
2020-10-12 04:28:39 +00:00
John Sully
2c45f36dd4 Remove dead code
Former-commit-id: c6f13892e04607700e27ec963fa1da695e784c11
2020-10-09 21:02:09 +00:00
Hanif Bin Ariffin
5c957fe228 Fixed non-empty check in src/Makefile
Per [GNU Make Manual](https://www.gnu.org/software/make/manual/html_node/Conditional-Syntax.html).
To properly check for non-empty variable, one must strip whitespaces.

Signed-off-by: Hanif Bin Ariffin <hanif.ariffin.4326@gmail.com>

Former-commit-id: 05e0f323456b8e667d10dabfa804757a2fc81b04
2020-10-05 10:58:49 -04:00
Hanif Bin Ariffin
bb67320752 Removed dead code from a macro in zmalloc.cpp
I think the compiler would have removed this no-op anyways but it
definitely wasted me some 30 minutes on this :(

I was hoping I could remove the branch through some bit-hacking but
apparently its dead code :). Oh well, its 30 minutes of refreshing
bit hacking.

Signed-off-by: Hanif Bin Ariffin <hanif.ariffin.4326@gmail.com>

Former-commit-id: 8171e6de13311e3ad2e87c32d63060dcf3bd6055
2020-10-03 20:41:26 -04:00
John Sully
2085e21dca Fix module test failures due to locking
Former-commit-id: 420ccdfbaebc452b9b374b54c6ebeec4a3ffea36
2020-10-01 00:08:54 +00:00
John Sully
51ae66539d Fix TLS test failure due to bad merge
Former-commit-id: 41466a4147bf675f69670016135f88589cc02a5c
2020-09-30 20:21:40 +00:00
John Sully
f7b7c5a168 Keep redis-cli.c C89 compatible
Former-commit-id: 9798f2d711939b03e972207638d18dcaa3b2e473
2020-09-30 20:17:51 +00:00
John Sully
a543a502b8 Mac build break fix
Former-commit-id: 5f3543921b4123c2216d9294c5eb7bfed007cbf5
2020-09-30 20:17:02 +00:00
John Sully
1fd53af71b Fix stream replication failure with active replication, issue #238
Former-commit-id: a41366cc3a6568c0249a5ee022e517add55e286d
2020-09-30 20:12:54 +00:00
John Sully
4f18a247e3 Merge tag '6.0.8' into unstable
Former-commit-id: 4c7e4b91a6bb2034636856b608b8c386d07f5541
2020-09-30 19:47:55 +00:00
John Sully
0dd31eeed5 Drop min-clients-per-thread to a more reasonable number
Former-commit-id: bf3a3225fccfb63f7b5e03ef0b362b788b97026d
2020-09-28 19:19:47 +00:00
John Sully
a4aa190f20 Drop min-clients-per-thread to a more reasonable number
Former-commit-id: a0abc1eddd071f984950ad8918fad0259c495184
2020-09-28 19:17:36 +00:00
John Sully
5f01bf9c91 bump version 6.0.16
Former-commit-id: dab9296d7cede9d692e65403b5fa1fa2663fdc6c
2020-09-28 19:14:17 +00:00
John Sully
8b1dad9d92 Merge branch 'unstable' into RELEASE_6
Former-commit-id: a6f5a391a140aa9a28464a00ea4148f387bb8d98
2020-09-28 18:55:24 +00:00
John Sully
ad4c2390a8 Merge branch 'unstable' into keydbpro
Former-commit-id: d1986d9fcdfd56f2c30ee95edef6d5260e0aa777
2020-09-24 22:02:30 +00:00
John Sully
d0885f945e Support read only replicas attaching to active replicas (Bug #229)
Former-commit-id: 676644f2db1634f97dd557a6e321234914a5e5d3
2020-09-23 04:16:08 +00:00
John Sully
1321170cdc Active replicas memory leak
Former-commit-id: 22ac56d62d982ef512b05ecd55d9d51d05ea2958
2020-09-22 21:38:35 +00:00
John Sully
b243fa876f Merge branch 'unstable' of https://github.com/JohnSully/KeyDB into unstable
Former-commit-id: 143f7f634db8adb1f5386d28832a17f7382b750b
2020-09-21 04:42:46 +00:00
Dmitry Dorofeev
823de49e83 Fix to support FreeBSD pthread_getthreadid_np call
Former-commit-id: 955faef23a6c080f40896cb9d68391b5586812e9
2020-09-21 00:41:41 -04:00
John Sully
7b0a5d1e40 Fix TSAN errors in fastlock
Former-commit-id: 2e159e6ea3fa8bb26c2f471f1493ab6593b85cff
2020-09-21 03:26:50 +00:00
John Sully
c3a0665f2a Fix issue #222
Former-commit-id: 02b533fec3473f67377237f195004ec1d438d84a
2020-09-21 01:09:58 +00:00
John Sully
b0379b9655 Make multimaster replication info statelessly paresable
Former-commit-id: de3099e6d880b7a544fd184e0f4c172f4d371c77
2020-09-20 23:57:06 +00:00
John Sully
f333cf98c9 Dramatically improve the performance of subkey expires
Former-commit-id: 368f67f42217c5fd2cfb3cb3643984917793e994
2020-09-20 23:30:21 +00:00
John Sully
d89fbd4175 Avoid memory overhead in situations it won't be used (active rep only)
Former-commit-id: 8f7d977f9068904eca783fefbb24df4d8abd4214
2020-09-19 21:44:59 +00:00
John Sully
3f294b6930 Fix build break
Former-commit-id: 50641d0569e8f4814b332da60ccd6d1bf425c53f
2020-09-17 00:53:56 +00:00
John Sully
693b360676 master_global_link_status should respect the quorum
Former-commit-id: f5ecc77e298d980f73ab34f7f1984bc7b9d451f4
2020-09-17 00:31:10 +00:00
John Sully
2c6fbac6ea Allow reads during an active replica load, optionally allow writes as an experimental feature
Former-commit-id: 655bb6e21c5e814980a7b8b3ac1481ef142c1845
2020-09-17 00:13:03 +00:00
John Sully
4eecb1825f Implement replica-quorum config
Former-commit-id: ab4cdd2ed4d3ee9752737d20662178d73d16b4c2
2020-09-16 03:26:31 +00:00
Yossi Gottlieb
bf6c002005 TLS: Session caching configuration support. (#7420)
* TLS: Session caching configuration support.
* TLS: Remove redundant config initialization.


Former-commit-id: d3834c50699bc4f31f381d6d03d4c1b022380895
2020-09-16 02:10:29 +00:00
John Sully
fc7b9399f9 Protocol error in client command
Former-commit-id: 7a1b2c58c3de736540cf4ec7f1539be63a54f5ac
2020-09-11 20:48:18 +00:00
John Sully
ea9cd04c75 Fix more protocol errors
Former-commit-id: 7fc6d6c6b177ad88dcddd0f4a7f68b74ccdaf037
2020-09-11 20:47:27 +00:00
John Sully
54de1d579d Fix protocol difference with Redis
Former-commit-id: dec5db4e71231135570d1f03cde4203ec0b87e44
2020-09-11 20:08:26 +00:00
Oran Agra
03b59cd5f0 6.0.8 2020-09-10 14:09:00 +03:00
Oran Agra
5380716a70 Fix RESP3 response for HKEYS/HVALS on non-existing key 2020-09-10 14:09:00 +03:00
Roi Lipman
25e211bcf0 RM_ThreadSafeContextTryLock a non-blocking method for acquiring GIL (#7738)
Co-authored-by: Yossi Gottlieb <yossigo@gmail.com>
Co-authored-by: Oran Agra <oran@redislabs.com>
(cherry picked from commit 042189fd8707544139337b3ddcf38b5c5fea1bf0)
2020-09-10 14:09:00 +03:00
Yossi Gottlieb
635704d424 Tests: validate CONFIG REWRITE for all params. (#7764)
This is a catch-all test to confirm that that rewrite produces a valid
output for all parameters and that this process does not introduce
undesired configuration changes.

(cherry picked from commit a8b7268911803f4ac827ab22e8e5b10134664832)
2020-09-10 14:09:00 +03:00
Oran Agra
47364bce69 Change THP warning to use madvise rather than never (#7771)
completes b2419c31c166bd2d73f7af3d089859795c0e3506

(cherry picked from commit 1461f02deb65585bb47c4d50d68ef733edfba6f9)
2020-09-10 14:09:00 +03:00
Itamar Haber
3cd6c26056 Documents RM_Call's fmt (#5448)
Improve RM_Call inline documentation about the fmt argument
so that we don't completely depend on the web docs.

Co-authored-by: Oran Agra <oran@redislabs.com>
(cherry picked from commit ce15620dc17ebad94cd03cb4ee779fdd4e99b212)
2020-09-10 14:09:00 +03:00
Jan-Erik Rediger
8b0d797ecd Check that THP is not set to always (madvise is ok) (#4001)
THP can also be set to madvise, in which case it shouldn't cause
problems for Redis since redis (or the allocator) doesn't use madvise
to activate it.

(cherry picked from commit b2419c31c166bd2d73f7af3d089859795c0e3506)
2020-09-10 14:09:00 +03:00
Eran Liberty
84ba2ec82b Allow exec with read commands on readonly replica in cluster (#7766)
There was a bug. Although cluster replicas would allow read commands,
they would not allow a MULTI-EXEC that's composed solely of read commands.
Adds tests for coverage.

Co-authored-by: Oran Agra <oran@redislabs.com>
Co-authored-by: Eran Liberty <eranl@amazon.com>
(cherry picked from commit b120366d48d9e488a406965773e64f29ba2946f7)
2020-09-10 14:09:00 +03:00
Yossi Gottlieb
cf3375bf7c Fix CONFIG REWRITE of oom-score-adj-values. (#7761)
(cherry picked from commit 750acf3a457053ad9f57a263baa84ec68e0ae145)
2020-09-10 14:09:00 +03:00
Yossi Gottlieb
332aa2f919 redis-cli: fix writeConn() buffer handling. (#7749)
Fix issues with writeConn() which resulted with corruption of the stream by leaving an extra byte in the buffer. The trigger for this is partial writes or write errors which were not experienced on Linux but reported on macOS.

(cherry picked from commit 58e5feb3f49c50b9c18f38fd8f6cad2317c02265)
2020-09-10 14:09:00 +03:00