Jiayuan Chen
096285ab64
Add optional tls verification ( #7502 )
...
Adds an `optional` value to the previously boolean `tls-auth-clients` configuration keyword.
Co-authored-by: Yossi Gottlieb <yossigo@gmail.com>
(cherry picked from commit f31260b0445f5649449da41555e1272a40ae4af7)
2020-09-01 09:27:58 +03:00
Yossi Gottlieb
8a4240b1fa
TLS: support cluster/replication without tls-port.
...
Initialize and configure OpenSSL even when tls-port is not used, because
we may still have tls-cluster or tls-replication.
Also, make sure to reconfigure OpenSSL when these parameters are changed
as TLS could have been enabled for the first time.
(cherry picked from commit c75512d89d1697cf782cdc826acffab5b6adc1c7)
2020-09-01 09:27:58 +03:00
grishaf
395d339234
Fix prepareForShutdown function declaration ( #7566 )
...
(cherry picked from commit 4126ca466fb9fbf0d84a66e31c9f59f28e2fbff6)
2020-09-01 09:27:58 +03:00
Madelyn Olson
e00b6248c9
Properly reset errno for rdbLoad ( #7542 )
...
(cherry picked from commit 818dc3a0898125d621288df671994eed34f849f2)
2020-09-01 09:27:58 +03:00
Wen Hui
d2f09a054c
Add missing calls to raxStop ( #7532 )
...
Since the dynamic allocations in raxIterator are only used for deep walks, memory
leak due to missing call to raxStop can only happen for rax with key names longer
than 32 bytes.
Out of all the missing calls, the only ones that may lead to a leak are the rax
for consumer groups and consumers, and these were only in AOFRW and rdbSave, which
normally only happen in fork or at shutdown.
(cherry picked from commit 4e8f2d6881a38397bfbf0d7d161959163a5f6e88)
2020-09-01 09:27:58 +03:00
Wen Hui
cef46edebc
add missing caching command in client help ( #7399 )
...
(cherry picked from commit 2fbd0271f6fc0a93b9323b6478ec1a7a4ca77614)
2020-09-01 09:27:58 +03:00
zhaozhao.zz
9e997cd0d1
replication: need handle -NOPERM error after send ping ( #7538 )
...
(cherry picked from commit 13e50935a84c319763a0d3b2be6ce64962092541)
2020-09-01 09:27:58 +03:00
John Sully
d1f45b8ebf
Implement use-fork config (fails with diskless repl)
...
Former-commit-id: f2d5c2bca22e9fd506db123c47b7f60cdded7e2c
2020-08-24 03:17:59 +00:00
John Sully
035cde502a
Fast cleanup of snapshots without leaving them forever
...
Former-commit-id: fdd83b2b49244ed2988b080892ee5cffe9fd2684
2020-08-17 00:33:37 +00:00
John Sully
b71f16471b
Allow garbage collection of generic data
...
Former-commit-id: feadb7fb1845027422bcfca43dbcb6097409b8dc
2020-08-17 00:32:48 +00:00
John Sully
e97e4f1a35
Add snapshot depth to info string
...
Former-commit-id: 66aef678e9d6d7ab6c28622d54ada0ea8cdd2a99
2020-08-16 00:27:10 +00:00
John Sully
6ba6652fcf
Don't try and consolidate snapshots with a depth of 1
...
Former-commit-id: 26c298bd9bc4e2c6981de5c20284120ea54580c3
2020-08-16 00:26:05 +00:00
John Sully
c3365964a0
Only save MVCC tstamps if its an active replica
...
Former-commit-id: 5aded7dbad055308dc3932f7797fc71684b60966
2020-08-16 00:24:18 +00:00
John Sully
71506d7e0a
Don't free snapshot objects in a critical path (under the AE lock)
...
Former-commit-id: d0da3d3cb74334cc8a2d14f4bdaef7935181700a
2020-08-16 00:13:19 +00:00
John Sully
e946e5f907
BUG: Cannot have an EMBSTR bigger than 255
...
Former-commit-id: e2d6e2d9d585cb7a73f469a8580f9cb0ec71a429
2020-08-15 23:30:22 +00:00
John Sully
2268a2b761
remove unnecessary allocation in rdb save
...
Former-commit-id: dfa76f04fd862e0cc7b4d3284b3922e3a5e5549d
2020-08-15 23:27:32 +00:00
John Sully
a14b2097c3
Remove unnecessary key comparisons in perf critical snapshot paths
...
Former-commit-id: 40f8a8d102fdca9443399ef03a47df609b146d58
2020-08-15 23:25:58 +00:00
John Sully
0311011131
dictMerge perf improvements
...
Former-commit-id: 48401ec369c5693689ef658cca518dc94ab1402e
2020-08-15 23:14:29 +00:00
John Sully
34937b0ad5
Rehash efficiency
...
Former-commit-id: fab383156626ec683881101c22eb2f6c2cea4c5d
2020-08-15 23:05:56 +00:00
John Sully
07c019fd3d
Prevent unnecessary copy when overwriting a value from a snapshot
...
Former-commit-id: 654a7bc6ea82f4ac45a1c1a25c794e1c27c0d902
2020-08-15 22:59:01 +00:00
John Sully
db193a1ef1
Merge branch 'unstable' into keydbpro
...
Former-commit-id: ae482585f0dc470efd73833f74111c2f87a172c5
2020-08-15 21:29:00 +00:00
John Sully
6c83ecbb48
Prehash the tombstone for cleanup
...
Former-commit-id: c9d97a7c7448fc769486175bea1648589487c87c
2020-08-14 16:05:39 +00:00
John Sully
e87dee8dc7
Add build flag to disable MVCC tstamps
...
Former-commit-id: f17d178d03f44abcdaddd851a313dd3f7ec87ed5
2020-08-10 06:10:24 +00:00
John Sully
e06152eb13
Fix lock after free in module API
...
Former-commit-id: d88fd1588d292bffc0aa53c299cb52e7a4e91015
2020-08-10 06:10:24 +00:00
John Sully
85d7a4c1e2
MVCC Perf fixes
...
Former-commit-id: 5a4afe5fb4231bec34d434f9e3214a7320842091
2020-08-10 05:45:56 +00:00
John Sully
3c1e63fa74
Fix assert caused by freeTombstoneObjects and null check in consolidate_children
...
Former-commit-id: 8565a02b331cd2bba2a1c7c6693dfb3f6e61c845
2020-08-10 05:01:36 +00:00
John Sully
649745924b
RocksDB Read Performance Improvements
...
Former-commit-id: 80cca4869888e048e10e11f1f20796c482c3e5b3
2020-08-09 23:36:20 +00:00
John Sully
1610f4211f
Start off storage cache with a larger size
...
Former-commit-id: 5f6fb970a81cc73586ba595b35564e7865e7262d
2020-08-09 00:57:56 +00:00
John Sully
11a8ab1865
Disable compression it destroys read perf
...
Former-commit-id: d3fffc12ae5339886f54c064127497f277393b00
2020-08-06 22:30:56 +00:00
John Sully
b388da300b
keydbpro unstable version should be 0.0.0
...
Former-commit-id: 4a6e0772f36d5dd721ad2e9b83f9fccce2e38ff0
2020-08-06 02:13:23 +00:00
John Sully
299794b32c
Latency normalization with SCAN
...
Former-commit-id: 237f25d854e70d4d7a3095fdf56aaa80770e492e
2020-08-04 04:37:16 +00:00
Oran Agra
7bf665f125
Redis 6.0.6.
2020-07-20 21:08:26 +03:00
yoav-steinberg
e28aa99af1
Support passing stack allocated module strings to moduleCreateArgvFromUserFormat ( #7528 )
...
Specifically, the key passed to the module aof_rewrite callback is a stack allocated robj. When passing it to RedisModule_EmitAOF (with appropriate "s" fmt string) redis used to panic when trying to inc the ref count of the stack allocated robj. Now support such robjs by coying them to a new heap robj. This doesn't affect performance because using the alternative "c" or "b" format strings also copies the input to a new heap robj.
(cherry picked from commit d484b8a04ed67e79030fcb060e88641acb6e4f98)
2020-07-20 21:08:26 +03:00
Luke Palmer
3051430040
Send null for invalidate on flush ( #7469 )
...
(cherry picked from commit 5f716ea467d29059a89f90b6ccbdee5a60443200)
2020-07-20 21:08:26 +03:00
dmurnane
29b20fd528
Notify systemd on sentinel startup ( #7168 )
...
Co-authored-by: Daniel Murnane <dmurnane@eitccorp.com>
(cherry picked from commit 9242ccf238cbed018eb3a7fa3a437618345dd52b)
2020-07-20 21:08:26 +03:00
Developer-Ecosystem-Engineering
5b36681213
Add registers dump support for Apple silicon ( #7453 )
...
Export following environment variables before building on macOS on Apple silicon
export ARCH_FLAGS="-arch arm64"
export SDK_NAME=macosx
export SDK_PATH=$(xcrun --show-sdk-path --sdk $SDK_NAME)
export CFLAGS="$ARCH_FLAGS -isysroot $SDK_PATH -I$SDK_PATH/usr/include"
export CXXFLAGS=$CFLAGS
export LDFLAGS="$ARCH_FLAGS"
export CC="$(xcrun -sdk $SDK_PATH --find clang) $CFLAGS"
export CXX="$(xcrun -sdk $SDK_PATH --find clang++) $CXXFLAGS"
export LD="$(xcrun -sdk $SDK_PATH --find ld) $LDFLAGS"
make
make test
..
All tests passed without errors!
Backtrack logging assumes x86 and required updating
(cherry picked from commit c2b5f1c15bbc5363f92f8e697538759c5d929934)
2020-07-20 21:08:26 +03:00
Wen Hui
0f75036c07
correct error msg for num connections reaching maxclients in cluster mode ( #7444 )
...
(cherry picked from commit d85af4d6f5fbe9cb9787b81583627cd74b47f838)
2020-07-20 21:08:26 +03:00
WuYunlong
b1a01fda91
Fix command help for unexpected options ( #7476 )
...
(cherry picked from commit 93bdbf5aa4857ede0816cf790f951da8e2fa2ae9)
2020-07-20 21:08:26 +03:00
WuYunlong
83f55f61a6
Refactor RM_KeyType() by using macro. ( #7486 )
...
(cherry picked from commit dc690161d5652d86d51bd209821bfb0e9c5f7ec2)
2020-07-20 21:08:26 +03:00
Oran Agra
f89f50dbd0
diskless master disconnect replicas when rdb child failed ( #7518 )
...
in case the rdb child failed, crashed or terminated unexpectedly redis
would have marked the replica clients with repl_put_online_on_ack and
then kill them only after a minute when no ack was received.
it would not stream anything to these connections, so the only effect of
this bug is a delay of 1 minute in the replicas attempt to re-connect.
(cherry picked from commit a176cb56a3c0235adddde33fcbaee2369a5af73e)
2020-07-20 21:08:26 +03:00
Qu Chen
9bc6af2449
Replica always reports master's config epoch in CLUSTER NODES output. ( #7235 )
...
(cherry picked from commit 938c35302fb618ec15e62443ef3bb3d00d10f5b9)
2020-07-20 21:08:26 +03:00
Oran Agra
c4b428a388
RESTORE ABSTTL skip expired keys - leak ( #7511 )
...
(cherry picked from commit 6a814501448c5673d05eb2cfe4fe650883da8f0e)
2020-07-20 21:08:26 +03:00
jimgreen2013
1be6dbbdf6
fix description about ziplist, the code is ok ( #6318 )
...
* fix description about ZIP_BIG_PREVLEN(the code is ok), it's similar to
antirez#4705
* fix description about ziplist entry encoding field (the code is ok),
the max length should be 2^32 - 1 when encoding is 5 bytes
(cherry picked from commit 67660881ed5b19a979425c37b3e8beea3349043c)
2020-07-20 21:08:26 +03:00
马永泽
1acdc84d10
fix benchmark in cluster mode fails to authenticate ( #7488 )
...
Co-authored-by: Oran Agra <oran@redislabs.com> (styling)
(cherry picked from commit 279b4a14643f247365637da13439fcb407072a9d)
2020-07-20 21:08:26 +03:00
Yossi Gottlieb
7a536c2912
TLS: Session caching configuration support. ( #7420 )
...
* TLS: Session caching configuration support.
* TLS: Remove redundant config initialization.
(cherry picked from commit 3e6f2b1a45176ac3d81b95cb6025f30d7aaa1393)
2020-07-20 21:08:26 +03:00
Yossi Gottlieb
6f1e828454
TLS: Ignore client cert when tls-auth-clients off. ( #7457 )
...
(cherry picked from commit 5266293a0fdee57fe6bb8a408a2e2ff0c66f0259)
2020-07-20 21:08:26 +03:00
James Hilliard
2d3687655b
Use pkg-config to properly detect libssl and libcrypto libraries ( #7452 )
...
(cherry picked from commit 6a014af79a9cbafc0be946047f216544f116b598)
2020-07-20 21:08:26 +03:00
Yossi Gottlieb
b057ff81ee
TLS: Add missing redis-cli options. ( #7456 )
...
* Tests: fix and reintroduce redis-cli tests.
These tests have been broken and disabled for 10 years now!
* TLS: add remaining redis-cli support.
This adds support for the redis-cli --pipe, --rdb and --replica options
previously unsupported in --tls mode.
* Fix writeConn().
(cherry picked from commit d9f970d8d3f0b694f1e8915cab6d4eab9cfb2ef1)
2020-07-20 21:08:26 +03:00
Oran Agra
a9d1014fb2
redis-cli --hotkeys fixed to handle non-printable key names
...
(cherry picked from commit b23e2510364bd13d9988921235c400c5657a8438)
2020-07-20 21:08:26 +03:00
Oran Agra
183bdc11c0
redis-cli --bigkeys fixed to handle non-printable key names
...
(cherry picked from commit 6f8a8647de5b16ff937dc25046151619a2eafabb)
2020-07-20 21:08:26 +03:00