Bug #37287 ATRT should use change master only
Submitted: 9 Jun 2008 15:59 Modified: 9 Mar 2009 13:47
Reporter: Jonathan Miller Email Updates:
Status: Closed Impact on me:
None 
Category:Tools Severity:S2 (Serious)
Version:mysql-6.0-telco-6.4 OS:Linux
Assigned to: Jonathan Miller CPU Architecture:Any
Tags: atrt

[9 Jun 2008 15:59] Jonathan Miller
Description:
Jonathan Miller skrev:
> Right, so maybe we need to just use change master 5.1 forward?
>
> Is this something you are willing to put in place?

File a bug and we will see.

>
> /Jeb
>
> Magnus Svensson wrote:
>> Jonathan Miller skrev:
>>> Hi,
>>>
>>> I spent time Friday and discovered why ATRT fail to invoke replication in the 6.0 version of mysql.
>>>
>>> Even though ATRT has ability to do "Change Master" it never gets a chance to do so.
>>>
>>> ATRT write master_host, master_port, master_user, etc... out to the my.cnf. Then MySQLD on the slave hits one of these values and shuts down  giving an error of unknown option.
>>>
>>> This is why I wish mysqld would just warn, ignore and continue.
>>>
>>> Nonetheless, it does not.
>>>
>>> Ideas?
>>>
>>
>>
>> We have to change atrt not to write that to the file. I think it's already has the ability to do a CHANGE MASTER so maybe it currently does both - if the mysqld would have started.
>>
>> / Magnus 

How to repeat:
See above

Suggested fix:
Use change master only
[9 Jun 2008 20:51] Magnus Blåudd
=== modified file 'storage/ndb/test/run-test/setup.cpp'
--- storage/ndb/test/run-test/setup.cpp	2008-02-21 13:57:42 +0000
+++ storage/ndb/test/run-test/setup.cpp	2008-06-09 19:22:17 +0000
@@ -34,10 +34,6 @@ struct proc_option f_options[] = {
   ,{ "--host=",        atrt_process::AP_CLIENT, 0 }
   ,{ "--server-id=",   atrt_process::AP_MYSQLD, PO_REP }
   ,{ "--log-bin",      atrt_process::AP_MYSQLD, PO_REP_MASTER }
-  ,{ "--master-host=", atrt_process::AP_MYSQLD, PO_REP_SLAVE }
-  ,{ "--master-port=", atrt_process::AP_MYSQLD, PO_REP_SLAVE }
-  ,{ "--master-user=", atrt_process::AP_MYSQLD, PO_REP_SLAVE }
-  ,{ "--master-password=", atrt_process::AP_MYSQLD, PO_REP_SLAVE }
   ,{ "--ndb-connectstring=", atrt_process::AP_MYSQLD | atrt_process::AP_CLUSTER
      ,PO_NDB }
   ,{ "--ndbcluster", atrt_process::AP_MYSQLD, PO_NDB }
[26 Feb 2009 9:29] Magnus Blåudd
Yes, using --loose-<option> would cause it to be ignored by a server that doesw not support it. But why can't we use CHANGE MASTER for all versions?
[4 Mar 2009 16:16] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/68267

2848 Jonathan.Miller@sun.com	2009-03-04
      Bug#37287
      Updates old replication setting to include --loose so new version will ignore and older version will use.
      
      In addition, fixed replication setup bug.
      modified:
        storage/ndb/test/run-test/db.cpp
        storage/ndb/test/run-test/setup.cpp
[9 Mar 2009 13:47] Jonathan Miller
No docs needed