List:Commits« Previous MessageNext Message »
From:Luís Soares Date:October 22 2008 4:47pm
Subject:Re: bzr commit into mysql-6.0-backup branch (cbell:2707) WL#4280
View as plain text  
Hi Chuck,
   I have reviewed your WL#4280 and have some comments (mostly technical).

   1. Problems while compiling the server:

      - I have found that compiling with BUILD/compile-pentium-debug-max 
would fail (in si_objects.cc). This happens in function is_slave(), 
because both active_mi and MYSQL_SLAVE_RUN_CONNECT are not valid in the 
scope. This is because HAVE_REPLICATION was not active, thence, as the 
code you added was not protected with #ifdef HAVE_REPLICATION 
compilation would break.
    The reason why HAVE_REPLICATION was not defined is that the that the 
-DEMBEDDED_LIBRARY overrided it. I was told that while compiling with 
embedded flag HAVE_REPLICATION is disabled. I then compiled with 
BUILD/compile-pentium-debug-max-no-embedded and it worked.

       SUGGESTION: protect the parts of the code that access replication 
only functions and objects with HAVE_REPLICATION. In 
write_incident_event, I would also suggest to find a way to log the 
event even if there are no slaves, agree? (Might be useful for auditing 
purposes).

   2. I have found a segmentation fault while running a simple mtr test 
(exercising your test harness). The test would segfault on restore:

##
source include/have_log_bin.inc;
USE test;

--disable_warnings
DROP TABLE IF EXISTS t1;
--enable_warnings

CREATE TABLE t1 (id INT);

# on the master insert some rows
let $1=10;
disable_query_log;
begin;
while ($1)
{
     eval INSERT INTO t1 VALUES( $1 );
       dec $1;
}
enable_query_log;
DROP TABLE t1;
save_master_pos;

####
####  1. EXERCISE TEST HARNESS
####

BACKUP_TEST ebt;
BACKUP_TEST ibe;

BACKUP_TEST ebf;
BACKUP_TEST ibe;

BACKUP_TEST iss;

BACKUP_TEST nsa;

#source include/master-slave.inc;
#sync_slave_with_master;
#stop slave;
#connection master;

BACKUP_TEST dst;
BACKUP_TEST dsf;

BACKUP_TEST nsa;

BACKUP DATABASE test TO 'test-image';
RESTORE FROM 'test-image';

   3. I have done also some manual testing for the following situations:

     - Turn on/off binlog and and check with mysqlbinlog whether events 
were written or not depending on the BACKUP_TEST ibe; (SUCCESS)

     - Tested BACKUP/RESTORE command not logging to binlog on master. 
(SUCCESS)

     - Tested RESTORE commands on slaves (while slave running and while 
stopped): (FAILED)

        While IO thread and SQL thread running the restore command would 
succeed. Is this the expected behavior. Please double check this.


   4. Regarding a conceptual and architectural view on the interfaces, 
overall these seemed good, although I missed the interface to: "Change 
type of binlogging (e.g., row/stmt)".

Hope these comments provide good feedback regarding this worklog and 
help you in your tasks.

Regards,
Luís
Thread
bzr commit into mysql-6.0-backup branch (cbell:2707) WL#4280Chuck Bell13 Oct
Re: bzr commit into mysql-6.0-backup branch (cbell:2707) WL#4280Luís Soares22 Oct
  • RE: bzr commit into mysql-6.0-backup branch (cbell:2707) WL#4280Chuck Bell27 Oct