From 8b5c12f522199cd36edbb4350d4033cb66c40ec1 Mon Sep 17 00:00:00 2001 From: Anthony Yeh Date: Tue, 3 Sep 2019 10:37:05 -0700 Subject: [PATCH] vtbackup: Stop slave before trying to change master address. Signed-off-by: Anthony Yeh --- go/cmd/vtbackup/vtbackup.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/go/cmd/vtbackup/vtbackup.go b/go/cmd/vtbackup/vtbackup.go index 6f5e72813a1..64ef47a961f 100644 --- a/go/cmd/vtbackup/vtbackup.go +++ b/go/cmd/vtbackup/vtbackup.go @@ -376,8 +376,8 @@ func startReplication(ctx context.Context, mysqld mysqlctl.MysqlDaemon, topoServ return vterrors.Wrapf(err, "Cannot read master tablet %v", si.MasterAlias) } - // Set master and start slave. - if err := mysqld.SetMaster(ctx, topoproto.MysqlHostname(ti.Tablet), int(topoproto.MysqlPort(ti.Tablet)), false /* slaveStopBefore */, true /* slaveStartAfter */); err != nil { + // Stop slave (in case we're restarting), set master, and start slave. + if err := mysqld.SetMaster(ctx, topoproto.MysqlHostname(ti.Tablet), int(topoproto.MysqlPort(ti.Tablet)), true /* slaveStopBefore */, true /* slaveStartAfter */); err != nil { return vterrors.Wrap(err, "MysqlDaemon.SetMaster failed") } return nil