8892b5cf9e
When redis-cli received ASK, it used string matching wrong and didn't handle it. When we access a slot which is in migrating state, it maybe return ASK. After redirect to the new node, we need send ASKING command before retry the command. In this PR after redis-cli receives ASK, we send a ASKING command before send the origin command after reconnecting. Other changes: * Make redis-cli -u and -c (unix socket and cluster mode) incompatible with one another. * When send command fails, we avoid the 2nd reconnect retry and just print the error info. Users will decide how to do next. See #9277. * Add a test faking two redis nodes in TCL to just send ASK and OK in redis protocol to test ASK behavior. Co-authored-by: Viktor Söderqvist <viktor.soderqvist@est.tech> Co-authored-by: Oran Agra <oran@redislabs.com> (cherry picked from commit cf61ad14cc45787e57d9af3f28f41462ac0f2aa2) |
||
---|---|---|
.. | ||
aof-race.tcl | ||
aof.tcl | ||
block-repl.tcl | ||
convert-zipmap-hash-on-load.tcl | ||
corrupt-dump-fuzzer.tcl | ||
corrupt-dump.tcl | ||
failover.tcl | ||
logging.tcl | ||
psync2-pingoff.tcl | ||
psync2-reg.tcl | ||
psync2.tcl | ||
rdb.tcl | ||
redis-benchmark.tcl | ||
redis-cli.tcl | ||
replication-2.tcl | ||
replication-3.tcl | ||
replication-4.tcl | ||
replication-psync.tcl | ||
replication.tcl |