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

PS-9244 postfix: binlog_server fails to resume copying binlog file after server restart #51

Merged

Conversation

percona-ysorokin
Copy link
Collaborator

@percona-ysorokin percona-ysorokin commented Jun 4, 2024

https://perconadev.atlassian.net/browse/PS-9244

Completely reworked the logic of the 'binsrv::events::reader_context' class - it is now implemented as a state machine expecting the following sequences of events within the binlogs:
(ROTATE(artificial) FORMAT_DESCRIPTION <ANY>* (ROTATE|STOP)?)+

We now properly handle the case when after improper MySQL server termination the last used binary log may end up not having a STOP or ROTATE event as its last one.

'binlog_streaming.pull_mode' MTR test case now also checks for killing the server while Binlog Server Utility is running in the background in 'pull' mode.

…ter server restart

https://perconadev.atlassian.net/browse/PS-9244

Completely reworked the logic of the 'binsrv::events::reader_context' class - it is
now implemented as a state machine expecting the following sequences of events
within the binlogs:
(ROTATE(artificial) FORMAT_DESCRIPTION <ANY>* (ROTATE|STOP)?)+

We now properly handle the case when after improper MySQL server termination
the last used binary log may end up not having a STOP or ROTATE event as its last
one.

'binlog_streaming.pull_mode' MTR test case now also checks for killing the server
while Binlog Server Utility is running in the background in 'pull' mode.
@percona-ysorokin percona-ysorokin merged commit dd313a6 into Percona-Lab:main Jun 4, 2024
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant