Gabriella Lotz created KUDU-3766:
------------------------------------
Summary: Master has no visibility into tserver quiescing state
Key: KUDU-3766
URL: https://issues.apache.org/jira/browse/KUDU-3766
Project: Kudu
Issue Type: Bug
Reporter: Gabriella Lotz
The Kudu master has no knowledge of whether a tserver is quiescing. As a
result, three master-side subsystems make placement decisions that ignore
quiescing:
* Auto leader rebalancer: schedules leader transfers to a quiescing tserver
every interval. The Raft layer silently drops each transfer, wasting the full
move budget for that round.
* Replica rebalancer: includes quiescing tservers as valid destinations for
replica moves. If a quiescing tserver has fewer replicas than others it can
receive new ones, directly counteracting a manual drain.
* Recovery re-replication and table/replica creation:
AvailableForPlacementUnlocked() in ts_manager.cc gates all master-side
placement decisions and only checks for MAINTENANCE_MODE and PresumedDead. A
quiescing tserver passes both checks and can be selected as the destination for
a recovered under-replicated replica or as a host for a newly created replica.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)