Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
Description
Currently the leader use heartbeat requests to periodically resolve log conflicts, while AppendEntries is only used to synchronize the latest log entry, even if the logs do not match. If there is an inconsistency in the log between nodes, the leader can only wait for a periodic heartbeat to try to solve it, but cannot solve it in a short time, which eventually leads to poor read performance. In fact, the leader should try to resolve the conflict as soon as they encounter a conflict after sending an AppendEntries request.