@@ -348,14 +348,6 @@ func (b *BinlogSyncer) registerSlave() error {
348348 }
349349 }
350350
351- if err = b .writeRegisterSlaveCommand (); err != nil {
352- return errors .Trace (err )
353- }
354-
355- if _ , err = b .c .ReadOKPacket (); err != nil {
356- return errors .Trace (err )
357- }
358-
359351 serverUUID , err := uuid .NewUUID ()
360352 if err != nil {
361353 b .cfg .Logger .Errorf ("failed to get new uuid %v" , err )
@@ -366,6 +358,14 @@ func (b *BinlogSyncer) registerSlave() error {
366358 return errors .Trace (err )
367359 }
368360
361+ if err = b .writeRegisterSlaveCommand (); err != nil {
362+ return errors .Trace (err )
363+ }
364+
365+ if _ , err = b .c .ReadOKPacket (); err != nil {
366+ return errors .Trace (err )
367+ }
368+
369369 return nil
370370}
371371
@@ -596,7 +596,7 @@ func (b *BinlogSyncer) writeRegisterSlaveCommand() error {
596596 hostname := b .localHostname ()
597597
598598 // This should be the name of slave host not the host we are connecting to.
599- data := make ([]byte , 4 + 1 + 4 + 1 + len (hostname )+ 1 + len (b .cfg .User )+ 1 + len ( b . cfg . Password ) + 2 + 4 + 4 )
599+ data := make ([]byte , 4 + 1 + 4 + 1 + len (hostname )+ 1 + len (b .cfg .User )+ 1 + 2 + 4 + 4 )
600600 pos := 4
601601
602602 data [pos ] = COM_REGISTER_SLAVE
@@ -616,10 +616,8 @@ func (b *BinlogSyncer) writeRegisterSlaveCommand() error {
616616 n = copy (data [pos :], b .cfg .User )
617617 pos += n
618618
619- data [pos ] = uint8 (len ( b . cfg . Password ) )
619+ data [pos ] = uint8 (0 )
620620 pos ++
621- n = copy (data [pos :], b .cfg .Password )
622- pos += n
623621
624622 binary .LittleEndian .PutUint16 (data [pos :], b .cfg .Port )
625623 pos += 2
0 commit comments