An error occurred fetching the project authors.
  1. 14 Mar, 2008 1 commit
    • unknown's avatar
      BUG#33029 5.0 to 5.1 replication fails on dup key when inserting · f21ee5d0
      unknown authored
      using a trig in SP
      
      For all 5.0 and up to 5.1.12 exclusive, when a stored routine or
      trigger caused an INSERT into an AUTO_INCREMENT column, the
      generated AUTO_INCREMENT value should not be written into the
      binary log, which means if a statement does not generate
      AUTO_INCREMENT value itself, there will be no Intvar event (SET
      INSERT_ID) associated with it even if one of the stored routine
      or trigger caused generation of such a value. And meanwhile, when
      executing a stored routine or trigger, it would ignore the
      INSERT_ID value even if there is a INSERT_ID value available set
      by a SET INSERT_ID statement.
      
      Starting from MySQL 5.1.12, the generated AUTO_INCREMENT value is
      written into the binary log, and the value will be used if
      available when executing the stored routine or trigger.
      
      Prior fix of this bug in MySQL 5.0 and prior MySQL 5.1.12
      (referenced as the buggy versions in the text below), when a
      statement that generates AUTO_INCREMENT value by the top
      statement was executed in the body of a SP, all statements in the
      SP after this statement would be treated as if they had generated
      AUTO_INCREMENT by the top statement.  When a statement that did
      not generate AUTO_INCREMENT value by the top statement but by a
      function/trigger called by it, an erroneous Intvar event would be
      associated with the statement, this erroneous INSERT_ID value
      wouldn't cause problem when replicating between masters and
      slaves of 5.0.x or prior 5.1.12, because the erroneous INSERT_ID
      value was not used when executing functions/triggers. But when
      replicating from buggy versions to 5.1.12 or newer, which will
      use the INSERT_ID value in functions/triggers, the erroneous
      value will be used, which would cause duplicate entry error and
      cause the slave to stop.
      
      The patch for 5.1 fixed it to ignore the SET INSERT_ID value when
      executing functions/triggers if it is replicating from a master
      of buggy versions, another patch for 5.0 fixed it not to generate
      the erroneous Intvar event.
      
      
      mysql-test/include/show_binlog_events.inc:
        add $binlog_start parameter to show binlog events from a given position
      sql/slave.cc:
        Add function to check for bug#33029
      sql/slave.h:
        Add function to check for bug#33029
      sql/sql_class.cc:
        if master has bug#33029, reset auto_inc_intervals_forced for sub statements
        
        add a new function Discrete_intervals_list::append that takes a Discrete_interval as argument
      sql/sql_class.h:
        Add member to save and restore auto_inc_intervals_forced
      sql/structs.h:
        add copy constructor and assignment operator for Discrete_intervals_list
        
        add a new function Discrete_intervals_list::append that takes a Discrete_interval as argument
      mysql-test/std_data/bug33029-slave-relay-bin.000001:
        relay logs from a buggy 5.0 master for test case of BUG#33029
      mysql-test/suite/binlog/r/binlog_auto_increment_bug33029.result:
        Test if the slave can process relay logs from a buggy master of BUG#33029
      mysql-test/suite/binlog/t/binlog_auto_increment_bug33029-master.opt:
        Test if the slave can process relay logs from a buggy master of BUG#33029
      mysql-test/suite/binlog/t/binlog_auto_increment_bug33029.test:
        Test if the slave can process relay logs from a buggy master of BUG#33029
      f21ee5d0
  2. 29 Jan, 2008 1 commit
    • unknown's avatar
      Test changes to fix failures in pushbuild. · b0f52885
      unknown authored
      mysql-test/include/show_binlog_events.inc:
        Replacing file_id=N with file_id=# to avoid result mismatches
      mysql-test/suite/binlog/r/binlog_killed_simulate.result:
        Result change
      mysql-test/suite/binlog/r/binlog_row_mix_innodb_myisam.result:
        Result change
      mysql-test/suite/binlog/r/binlog_stm_blackhole.result:
        Result change
      mysql-test/suite/binlog/r/binlog_stm_mix_innodb_myisam.result:
        Result change
      mysql-test/suite/binlog/t/binlog_stm_mix_innodb_myisam.test:
        Binlog positions differ between mixed and statement based replication.
      mysql-test/suite/rpl/r/rpl_stm_log.result:
        Result change
      b0f52885
  3. 08 Jun, 2007 1 commit
    • unknown's avatar
      Bug#28369 rpl test cases fail with binlog disabled · 928e00b8
      unknown authored
      - Backport include/show_binlog_events.inc from 5.1 and use it to make
      the test output consistent results
      
      
      mysql-test/r/mix_innodb_myisam_binlog.result:
        Backport include/show_binlog_events.inc from 5.1 and use it to make
        the test output consistent results
      mysql-test/t/mix_innodb_myisam_binlog.test:
        Backport include/show_binlog_events.inc from 5.1 and use it to make
        the test output consistent results
      mysql-test/include/show_binlog_events.inc:
        New BitKeeper file ``mysql-test/include/show_binlog_events.inc''
      928e00b8
  4. 18 Apr, 2007 2 commits
    • unknown's avatar
      revert back to old show_binlog_events asto many test failures, and create a... · 4cb86e6e
      unknown authored
      revert back to old show_binlog_events asto many test failures, and create a show_binlog_events2 instead
      
      
      BitKeeper/etc/ignore:
        Added client/log_event_old.cc client/log_event_old.h client/rpl_record_old.cc client/rpl_record_old.h libmysqld/log_event_old.cc libmysqld/rpl_record.cc libmysqld/rpl_record_old.cc to the ignore list
      mysql-test/include/show_binlog_events2.inc:
        New BitKeeper file ``mysql-test/include/show_binlog_events2.inc''
      4cb86e6e
    • unknown's avatar
      Bug #27076 Cluster does not honor SQL_LOG_BIN flag · ca564999
      unknown authored
      - both for data schema operations
      - also make sure schema events vet the right server id when injected into the binlog
      - use same mechanism to signal server_id in bug#17095, and reserve some "id's" for flagging special conditions on the event, in this case do not log it
      - enable printing of server ids in the testcases to show that we cot it right
      
      
      ca564999
  5. 30 Mar, 2007 1 commit
    • unknown's avatar
      - Fixing binary log positions · 5a7b2fc7
      unknown authored
      - Eliminating some compiler warnings
      
      
      mysql-test/extra/binlog_tests/blackhole.test:
        Using include file for SHOW BINLOG EVENTS.
      mysql-test/extra/binlog_tests/drop_temp_table.test:
        Using include file for SHOW BINLOG EVENTS.
      mysql-test/extra/binlog_tests/insert_select-binlog.test:
        Using include file for SHOW BINLOG EVENTS.
      mysql-test/extra/rpl_tests/rpl_log.test:
        Using include file for SHOW BINLOG EVENTS.
      mysql-test/extra/rpl_tests/rpl_row_delayed_ins.test:
        Using include file for SHOW BINLOG EVENTS.
      mysql-test/extra/rpl_tests/rpl_truncate_helper.test:
        Using include file for SHOW BINLOG EVENTS.
      mysql-test/include/show_binlog_events.inc:
        Fixing regex replace to handle XIDs as well.
      mysql-test/r/binlog_row_binlog.result:
        Result change
      mysql-test/r/binlog_row_blackhole.result:
        Result change
      mysql-test/r/binlog_row_ctype_ucs.result:
        Result change
      mysql-test/r/binlog_row_drop_tmp_tbl.result:
        Result change
      mysql-test/r/binlog_row_insert_select.result:
        Result change
      mysql-test/r/binlog_row_mix_innodb_myisam.result:
        Result change
      mysql-test/r/binlog_stm_binlog.result:
        Result change
      mysql-test/r/binlog_stm_blackhole.result:
        Result change
      mysql-test/r/binlog_stm_drop_tmp_tbl.result:
        Result change
      mysql-test/r/binlog_stm_insert_select.result:
        Result change
      mysql-test/r/binlog_stm_mix_innodb_myisam.result:
        Result change
      mysql-test/r/ctype_cp932_binlog_row.result:
        Result change
      mysql-test/r/rpl_ndb_charset.result:
        Result change
      mysql-test/r/rpl_ndb_log.result:
        Result change
      mysql-test/r/rpl_ndb_multi.result:
        Result change
      mysql-test/r/rpl_row_basic_11bugs.result:
        Result change
      mysql-test/r/rpl_row_charset.result:
        Result change
      mysql-test/r/rpl_row_create_table.result:
        Result change
      mysql-test/r/rpl_row_delayed_ins.result:
        Result change
      mysql-test/r/rpl_row_drop.result:
        Result change
      mysql-test/r/rpl_row_flsh_tbls.result:
        Result change
      mysql-test/r/rpl_row_inexist_tbl.result:
        Result change
      mysql-test/r/rpl_row_log.result:
        Result change
      mysql-test/r/rpl_row_log_innodb.result:
        Result change
      mysql-test/r/rpl_row_reset_slave.result:
        Result change
      mysql-test/r/rpl_row_until.result:
        Result change
      mysql-test/r/rpl_stm_log.result:
        Result change
      mysql-test/r/rpl_truncate_2myisam.result:
        Result change
      mysql-test/r/rpl_truncate_3innodb.result:
        Result change
      mysql-test/r/rpl_udf.result:
        Result change
      mysql-test/t/binlog_row_mix_innodb_myisam.test:
        Fixing binary log position
      mysql-test/t/binlog_stm_mix_innodb_myisam.test:
        Fixing binary log position.
      sql/log_event.cc:
        Eliminating compiler warnings.
      5a7b2fc7
  6. 29 Mar, 2007 1 commit
    • unknown's avatar
      WL#3464: Add replication event to denote gap in replication · adaf162b
      unknown authored
      Adding an event that can be used to denote that an incident occured
      on the master. The event can be used to denote a gap in the replication
      stream, but can also be used to denote other incidents.
      
      In addition, the injector interface is extended with functions to
      generate an incident event. The function will also rotate the binary
      log after generating an incident event to get a fresh binary log.
      
      
      client/Makefile.am:
        Adding file rpl_constants.h with constants for replication.
      mysql-test/extra/binlog_tests/binlog.test:
        Binlog position change
      mysql-test/extra/binlog_tests/binlog_insert_delayed.test:
        Binlog position change
      mysql-test/extra/binlog_tests/ctype_cp932_binlog.test:
        Binlog position change
      mysql-test/extra/binlog_tests/ctype_ucs_binlog.test:
        Binlog position change
      mysql-test/extra/binlog_tests/mix_innodb_myisam_binlog.test:
        Binlog position change
      mysql-test/extra/rpl_tests/rpl_deadlock.test:
        Binlog position change
      mysql-test/extra/rpl_tests/rpl_log.test:
        Binlog position change
      mysql-test/extra/rpl_tests/rpl_multi_query.test:
        Binlog position change
      mysql-test/extra/rpl_tests/rpl_row_charset.test:
        Binlog position change
      mysql-test/extra/rpl_tests/rpl_row_sp002.test:
        Binlog position change
      mysql-test/extra/rpl_tests/rpl_row_sp003.test:
        Binlog position change
      mysql-test/extra/rpl_tests/rpl_stm_charset.test:
        Binlog position change
      mysql-test/include/show_binlog_events.inc:
        Binlog position change
      mysql-test/r/binlog_row_binlog.result:
        Result change
      mysql-test/r/binlog_row_ctype_ucs.result:
        Result change
      mysql-test/r/binlog_row_insert_select.result:
        Result change
      mysql-test/r/binlog_row_mix_innodb_myisam.result:
        Result change
      mysql-test/r/binlog_stm_binlog.result:
        Result change
      mysql-test/r/binlog_stm_ctype_ucs.result:
        Result change
      mysql-test/r/binlog_stm_insert_select.result:
        Result change
      mysql-test/r/binlog_stm_mix_innodb_myisam.result:
        Result change
      mysql-test/r/ctype_cp932_binlog_row.result:
        Result change
      mysql-test/r/ctype_cp932_binlog_stm.result:
        Result change
      mysql-test/r/flush_block_commit_notembedded.result:
        Result change
      mysql-test/r/rpl_000015.result:
        Result change
      mysql-test/r/rpl_change_master.result:
        Result change
      mysql-test/r/rpl_deadlock_innodb.result:
        Result change
      mysql-test/r/rpl_flushlog_loop.result:
        Result change
      mysql-test/r/rpl_loaddata.result:
        Result change
      mysql-test/r/rpl_loaddata_s.result:
        Result change
      mysql-test/r/rpl_log_pos.result:
        Result change
      mysql-test/r/rpl_ndb_charset.result:
        Result change
      mysql-test/r/rpl_ndb_log.result:
        Result change
      mysql-test/r/rpl_ndb_multi.result:
        Result change
      mysql-test/r/rpl_rbr_to_sbr.result:
        Result change
      mysql-test/r/rpl_rotate_logs.result:
        Result change
      mysql-test/r/rpl_row_basic_11bugs.result:
        Result change
      mysql-test/r/rpl_row_charset.result:
        Result change
      mysql-test/r/rpl_row_create_table.result:
        Result change
      mysql-test/r/rpl_row_delayed_ins.result:
        Result change
      mysql-test/r/rpl_row_drop.result:
        Result change
      mysql-test/r/rpl_row_flsh_tbls.result:
        Result change
      mysql-test/r/rpl_row_inexist_tbl.result:
        Result change
      mysql-test/r/rpl_row_log.result:
        Result change
      mysql-test/r/rpl_row_log_innodb.result:
        Result change
      mysql-test/r/rpl_row_max_relay_size.result:
        Result change
      mysql-test/r/rpl_row_reset_slave.result:
        Result change
      mysql-test/r/rpl_row_until.result:
        Result change
      mysql-test/r/rpl_server_id1.result:
        Result change
      mysql-test/r/rpl_server_id2.result:
        Result change
      mysql-test/r/rpl_sp.result:
        Result change
      mysql-test/r/rpl_stm_charset.result:
        Result change
      mysql-test/r/rpl_stm_flsh_tbls.result:
        Result change
      mysql-test/r/rpl_stm_log.result:
        Result change
      mysql-test/r/rpl_stm_max_relay_size.result:
        Result change
      mysql-test/r/rpl_stm_multi_query.result:
        Result change
      mysql-test/r/rpl_stm_reset_slave.result:
        Result change
      mysql-test/r/rpl_stm_until.result:
        Result change
      mysql-test/r/rpl_switch_stm_row_mixed.result:
        Result change
      mysql-test/r/rpl_truncate_2myisam.result:
        Result change
      mysql-test/r/rpl_truncate_3innodb.result:
        Result change
      mysql-test/r/rpl_truncate_7ndb.result:
        Result change
      mysql-test/r/user_var-binlog.result:
        Result change
      mysql-test/t/binlog_row_mix_innodb_myisam.test:
        Binlog position change
      mysql-test/t/binlog_stm_mix_innodb_myisam.test:
        Binlog position change
      mysql-test/t/ctype_cp932_binlog_stm.test:
        Binlog position change
      mysql-test/t/mysqlbinlog.test:
        Binlog position change
      mysql-test/t/mysqlbinlog2.test:
        Binlog position change
      mysql-test/t/rpl_loaddata_s.test:
        Binlog position change
      mysql-test/t/rpl_log_pos.test:
        Binlog position change
      mysql-test/t/rpl_row_basic_11bugs.test:
        Binlog position change
      mysql-test/t/rpl_row_create_table.test:
        Binlog position change
      mysql-test/t/rpl_row_flsh_tbls.test:
        Binlog position change
      mysql-test/t/rpl_row_mysqlbinlog.test:
        Binlog position change
      mysql-test/t/rpl_sp.test:
        Binlog position change
      mysql-test/t/rpl_stm_flsh_tbls.test:
        Binlog position change
      mysql-test/t/rpl_switch_stm_row_mixed.test:
        Binlog position change
      mysql-test/t/user_var-binlog.test:
        Binlog position change
      sql/Makefile.am:
        Adding file rpl_constants.h with constants for replication.
      sql/log_event.cc:
        Changing prototype for read_str() to be const-correct and changing code to match that.
        Adding incident log event.
      sql/log_event.h:
        Adding incident log event.
      sql/rpl_injector.cc:
        Adding support for generating incidents into the binary log.
      sql/rpl_injector.h:
        Adding support for generating incidents into the binary log.
      sql/share/errmsg.txt:
        Adding new error message to indicate an incident.
      sql/sql_parse.cc:
        Adding code to generate an incident log event just before executing a REPLACE
        if the variable "incident_database_resync_on_replace" is set.
      mysql-test/r/rpl_incident.result:
        New BitKeeper file ``mysql-test/r/rpl_incident.result''
      mysql-test/t/rpl_incident.test:
        New BitKeeper file ``mysql-test/t/rpl_incident.test''
      sql/rpl_constants.h:
        New BitKeeper file ``sql/rpl_constants.h''
      adaf162b
  7. 20 Mar, 2007 1 commit
    • unknown's avatar
      BUG#22583: RBR between MyISAM and non-MyISAM tables containing a BIT · a0e0166b
      unknown authored
                 field does not work
      
      Fix to prevent MyISAM from reading data from NULL BLOB.
      Fix to make record comparison independent of values of unused bits in
      record.
      Updating binlog positions in tests.
      
      
      mysql-test/extra/rpl_tests/rpl_multi_query.test:
        Binlog position change
      mysql-test/extra/rpl_tests/rpl_stm_charset.test:
        Binlog position change
      mysql-test/include/show_binlog_events.inc:
        Binlog position change
      mysql-test/r/binlog_stm_binlog.result:
        Result change
      mysql-test/r/binlog_stm_ctype_ucs.result:
        Result change
      mysql-test/r/binlog_stm_insert_select.result:
        Result change
      mysql-test/r/binlog_stm_mix_innodb_myisam.result:
        Result change
      mysql-test/r/ctype_cp932_binlog_stm.result:
        Result change
      mysql-test/r/ndb_binlog_multi.result:
        Result change
      mysql-test/r/rpl_known_bugs_detection.result:
        Result change
      mysql-test/r/rpl_loaddata.result:
        Result change
      mysql-test/r/rpl_loaddata_s.result:
        Result change
      mysql-test/r/rpl_ndb_charset.result:
        Result change
      mysql-test/r/rpl_ndb_extraCol.result:
        Result change
      mysql-test/r/rpl_ndb_log.result:
        Result change
      mysql-test/r/rpl_ndb_multi.result:
        Result change
      mysql-test/r/rpl_rbr_to_sbr.result:
        Result change
      mysql-test/r/rpl_rotate_logs.result:
        Result change
      mysql-test/r/rpl_sp.result:
        Result change
      mysql-test/r/rpl_stm_charset.result:
        Result change
      mysql-test/r/rpl_stm_flsh_tbls.result:
        Result change
      mysql-test/r/rpl_stm_log.result:
        Result change
      mysql-test/r/rpl_stm_max_relay_size.result:
        Result change
      mysql-test/r/rpl_stm_multi_query.result:
        Result change
      mysql-test/r/rpl_stm_reset_slave.result:
        Result change
      mysql-test/r/rpl_stm_until.result:
        Result change
      mysql-test/r/rpl_truncate_7ndb.result:
        Result change
      mysql-test/r/user_var-binlog.result:
        Result change
      mysql-test/t/binlog_stm_mix_innodb_myisam.test:
        Binlog position change
      mysql-test/t/ctype_cp932_binlog_stm.test:
        Binlog position change
      mysql-test/t/mysqlbinlog.test:
        Binlog position change
      mysql-test/t/mysqlbinlog2.test:
        Binlog position change
      mysql-test/t/rpl_sp.test:
        Binlog position change
      mysql-test/t/rpl_stm_flsh_tbls.test:
        Binlog position change
      sql/log_event.cc:
        Emptying the record entirely since it appears MyISAM reads blob column
        data even when they are NULL.
        
        Adding code to set unused bits of the records before doing a comparison,
        and restoring the original values after. Setting the unused bits is necessary
        since NDB does not set them correctly, and resetting them afterwards is needed
        because MyISAM compares the record with the one located when updating
        or deleting it.
      mysql-test/r/rpl_row_basic_11bugs-master.opt:
        New BitKeeper file ``mysql-test/r/rpl_row_basic_11bugs-master.opt''
      mysql-test/r/rpl_row_basic_11bugs-slave.opt:
        New BitKeeper file ``mysql-test/r/rpl_row_basic_11bugs-slave.opt''
      a0e0166b
  8. 09 Mar, 2006 2 commits
    • unknown's avatar
      Test fixes · 5d85c843
      unknown authored
      mysql-test/include/show_binlog_events.inc:
        Mask table id from binlog output
      mysql-test/t/ndb_binlog_ddl_multi.test:
        Use show_binlog_events.inc file
      5d85c843
    • unknown's avatar
      Bug #17838 binlog not setup on seconday master after rename · 1f3825b2
      unknown authored
      -added setting up of binlogging after receiving rename table
      +cleanup
      
      
      mysql-test/r/ndb_binlog_ddl_multi.result:
        Bug #17838 binlog not setup on seconday master after rename
      mysql-test/t/ndb_binlog_ddl_multi.test:
        Bug #17838 binlog not setup on seconday master after rename
      mysql-test/include/show_binlog_events.inc:
        New BitKeeper file ``mysql-test/include/show_binlog_events.inc''
      1f3825b2