Abhishek Chennaka created KUDU-3816:
---------------------------------------

             Summary: Newly elected Raft leader delayed initial heartbeat due 
to high --raft_heartbeat_interval_ms causes scans on new tablets to be rejected.
                 Key: KUDU-3816
                 URL: https://issues.apache.org/jira/browse/KUDU-3816
             Project: Kudu
          Issue Type: Improvement
            Reporter: Abhishek Chennaka


After a replica becomes a leader {{RaftConsensus::BecomeLeaderUnlocked()}} 
appends the NO_OP for the new term to its queue but doesn't send it right away. 

So the NO_OP only goes out with the first heartbeat to each follower which has 
a wait time of utmost about {{{}--raft_heartbeat_interval_ms{}}}. Until the 
NO_OP is committed, the MVCC clean time of a newly created tablet isn't 
initialized, and every replica of that tablet rejects scans with:
{noformat}
Uninitialized: clean time has not yet been initialized (TABLET_NOT_RUNNING)
{noformat}
A write to the tablet hides the problem: {{Replicate()}} signals the peers, and 
the NO_OP is sent together with the write. Only tablets that haven't been 
written to since the election are affected.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to