-
Notifications
You must be signed in to change notification settings - Fork 817
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
Add support for reading optional table metadata #251
Conversation
Hello @shyiko , This PR adds support for new optional table metadata introduced in MySQL 8.0.1. Among other things, it adds column names to the binlog, subject to MySQL configuration. Would you be open to working with me on this change? In particular, I have some questions about whether you'd like to include all newly included fields or just a subset thereof. The full list is documented over here. |
Hi Ahmed.
all available Let me know if I can help to move this forward. |
21fab96
to
c5106da
Compare
Hi Stanely, A few things I need to mention:
One last thing I would like to mention is that my team is planning to utilize this library in Brooklin, a CDC system LinkedIn is open-sourcing in a few months. |
Thank you, Ahmed! This looks great! |
Thanks for the super prompt feedback, Stanley. My pleasure! Please, feel free to give as much feedback as you want about this change. I am certainly willing to make more changes/improvements.
Thanks again. |
That's a very good point. One way to fix that (aside from restoring block size in
That's weird. I haven't seen that before. Here is my (current) setup: $ system_profiler SPSoftwareDataType | grep "System Version"
System Version: macOS 10.14 (18A391)
$ vagrant --version
Vagrant 2.0.2
$ VirtualBox --help | grep "VirtualBox Manager"
Oracle VM VirtualBox Manager 5.2.22 I'd try cd supplement/vagrant/mysql-8.0.1-sandbox-prepackaged
vagrant up
# you should now be able to run tests from IDEA (no changes required) |
Thanks again, Stanley.
There could be cases where reading a field fails midway. I wasn't sure there was a reliable way of knowing the exact block size to restore in such cases.
Done. Thanks for the suggestion. I ran the integration tests successfully on a mac. I was running them on CentOS 7 earlier. One last thing I wanted to bring up is that, with this change, there will be 3 different/redundant versions of string join, i.e. here, here, and here. Would you like me to address this in this change? If so, do you have any preference as to where such utility method should exist? |
Awesome! Thank you, Ahmed. This is one of those perfectly executed PRs! Merging in 🙇 |
It was a pleasure working with you on this, Stanley. Thank you for the quick turnaround. |
Add logic to read optional table metadata that was added to the binlog in MySQL 8.0.1.