diff options
author | Sujatha <sujatha.sivakumar@mariadb.com> | 2021-08-09 16:26:21 +0530 |
---|---|---|
committer | Sujatha <sujatha.sivakumar@mariadb.com> | 2021-08-18 14:19:23 +0530 |
commit | d6f19555cc9bcf6a01cbf71d2ee4c2fdae93c839 (patch) | |
tree | 4e5e19d36d943c0af9bd84a39e26765f7696262e /sql-common/client.c | |
parent | c949772680447b510eb42a5053e1da407019381a (diff) | |
download | mariadb-git-bb-10.7-sujatha.tar.gz |
MDEV-23372: rpl.rpl_skip_replication still fails in buildbot with an extrabb-10.7-sujatha
warning
Problem:
========
[Warning] Aborted connection 18 to db: 'unconnected' user: 'root' host:
'localhost' (Got an error reading communication packets)
[Note] Start binlog_dump to slave_server(2), pos(, 4), using_gtid(0),
gtid('')
[Warning] Aborted connection 17 to db: 'unconnected' user: 'root' host:
'localhost' (A slave with the same server_uuid/server_id as this slave has
co)
[Warning] Master is configured to log replication events with checksum, but
will not send such events to slaves that cannot process theml
Analysis:
=========
Issue is similar MDEV-14203. MDEV-14203 fix addressed network write error
issue now the same needs to be implemented for network read error.
Fix:
===
Upon network read error donot attempt reconnect, proceed to master-slave
handshake. This ensures that master is aware of slave's capability to use
checksums.
Diffstat (limited to 'sql-common/client.c')
-rw-r--r-- | sql-common/client.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sql-common/client.c b/sql-common/client.c index a551258aa34..fa48fa5dce8 100644 --- a/sql-common/client.c +++ b/sql-common/client.c @@ -510,7 +510,9 @@ cli_advanced_command(MYSQL *mysql, enum enum_server_command command, set_mysql_error(mysql, CR_NET_PACKET_TOO_LARGE, unknown_sqlstate); goto end; } - if (net->last_errno == ER_NET_ERROR_ON_WRITE && command == COM_BINLOG_DUMP) + if ((net->last_errno == ER_NET_ERROR_ON_WRITE || + net->last_errno == ER_NET_READ_ERROR ) + && command == COM_BINLOG_DUMP) goto end; end_server(mysql); if (mysql_reconnect(mysql) || stmt_skip) |