Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sync windows corruption may occur when slave try to reconnect to the master after an timeout-casued repl dissconnection between slave and master #2655

Closed
cheniujh opened this issue May 16, 2024 · 0 comments · Fixed by #2638
Labels
☢️ Bug Something isn't working

Comments

@cheniujh
Copy link
Collaborator

cheniujh commented May 16, 2024

Is this a regression?

No

Description

主从同步时,在发生超时重连的场景下,容易出现BInlog Windown Curruption, 导致主从无法重新正确续传

特征:
1 Slave返回的Binlog Ack所携带的Binlog Ack Range跨度特别大,假设正常的BinlogACK跨度为10条BInlog,这个ACK跨度可能是500条BInlog,这明显不合理
2 该BinlogAck的Ack Range中的前80-90%都已经不在窗口,可能只有该Ack Range最后10%所对应的BInlog还在SyncWindow中

In master-slave synchronization, scenarios involving timeout reconnections are prone to Binlog Window Corruption, resulting in the master and slave being unable to resume correct transmission.

Features:

1 The Binlog Ack range carried by the Slave's return is exceptionally large; assuming the normal Binlog Ack range spans 10 Binlog entries, this Ack range might span 500 Binlog entries, which is clearly unreasonable.
2 In the Binlog Ack's Ack Range, the first 80-90% are already out of the window, and it is likely that only the last 10% corresponding to the Binlog entries are still within the SyncWindow.

Please provide a link to a minimal reproduction of the bug

No response

Screenshots or videos

f7f1b085c47b6bbe5862f9b3f4986731_image_662f413587681

Please provide the version you discovered this bug in (check about page for version information)

No response

Anything else?

No response

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
☢️ Bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant