osheroff/mysql-binlog-connector-java

Bin log client connection errors out with "A slave with the same server_uuid/server_id as this slave has connected to the master"

Opened this issue · 1 comments

We have an ETL application that uses the binlog client to read from MySQL 5.7 bin logs, and it's working fine. Recently, we have deployed the same codebase under a new application to read from a different MySQL DB cluster. The new application is deployed into multiple environments (like dev/staging) and in each env, the application is reading from the same binlog, similar to previous application.

However the new application started exhibiting a behavior where the binlog client continuously tries to connect and loses the connection after throwing an error: 'A slave with the same server_uuid/server_id as this slave has connected to the master.'
I understand that this issue may be due to the fact that we are using the default serverId while connecting to bin logs. However, I didn't understand why we have not seen this behavior in previous deployments with the same configurations.

The only difference between previous application and the new application is the MySQL DB cluster engine, previously it was 5.7 and for the new application its MySQL 8.0. I tried to go through the MySQL 8.0 documentation, but I didn't find any mention, which suggests that some new validations been added in 8.0 version. Do anyone know or send me a link which suggest that 8.0 have added new validations, due to which we are observing the difference in behavior.

Any help here will be appreciated.

I think the unique uuid requirement started happening in 8.0. the serverId requirement was always there but the server-uuid came in with 8.0. i think. I don't have the documentation and sometimes mysql docs are not super specific about this