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

[WIP] Feature/u1141 support latest replication #6

Open
wants to merge 3 commits into
base: develop
Choose a base branch
from

Conversation

mmasashi
Copy link
Contributor

NOTE: This change breaks compatibility. Don't merge until ready to release.

This change is for supporting latest mysql-replication-listener which uses mysql client library instead of boost. Since ruby-binlog refers depricated api and internal member variables of replication, some codes needed to be changed.

Todos

  • Support configuring mysql and replication install path
  • Use connecting() method of replication which is implemented for ruby-binlog
  • Solve compile issue
  • Solve macro definitions conflict between my_global.h and ruby.h
  • Implement better handling for binlog event to take care of connection errors.

However there are still issues as follows.
- Some macro definitions conflict between my_global.h and ruby.h
- Event handling for receiving binlog data is poor
  - mysql-replication-listener doesn't support event loop because it
    stopped using boost::aio event library. With this change,
unintentional connection close cannot be detected. Own event-loop
implementation would be required.
  - Previous ruby-binlog code was checking socket object directory, but
    the socket object of mysql-replication-listener is wrapped with
another object.
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