1. 30 May, 2007 6 commits
    • unknown's avatar
      Fixing wrong memory read problem detected by Valgrind in "xml" test. · 42eab5a2
      unknown authored
      The source of the problem was in my_vsnprintf() implementation.
      
      
      strings/my_vsnprintf.c:
        Fixing a problem in vsnprintf('%.*s', len, ptr)
        When processing the above format, it's incorrect
        to use strlen() because the string is not necessarily
        a null terminated string.
        Changing strlen() followed by set_if_smaller()
        to strnlen() - which covers both cases - limiting
        by '\0' and by "len".
      42eab5a2
    • unknown's avatar
      Merge... · b3949122
      unknown authored
      Merge dsl-hkibras1-ff5dc300-70.dhcp.inet.fi:/home/elkin/MySQL/TEAM/FIXES/5.1/bug27044_slave_dup2unique
      into  dsl-hkibras1-ff5dc300-70.dhcp.inet.fi:/tmp/merge_5.0
      
      
      sql/log_event.cc:
        Auto merged
      b3949122
    • unknown's avatar
      bug#22725 · 73acdb35
      unknown authored
      merge 5.0 with 5.1
      
      
      mysql-test/t/binlog_killed.test:
        offset change in 5.1
      73acdb35
    • unknown's avatar
      Merge dsl-hkibras1-ff5dc300-70.dhcp.inet.fi:/home/elkin/MySQL/TEAM/BARE/5.0 · 34f4dffd
      unknown authored
      into  dsl-hkibras1-ff5dc300-70.dhcp.inet.fi:/tmp/merge_5.0
      
      
      34f4dffd
    • unknown's avatar
      bug#22725 · e5c4d97c
      unknown authored
      test comments correction
      
      
      mysql-test/r/binlog_killed.result:
        changed
      mysql-test/t/binlog_killed.test:
        wrong comments (but important ones) left;
        little refinement in result calc
      e5c4d97c
    • unknown's avatar
      Merge dsl-hkibras1-ff5dc300-70.dhcp.inet.fi:/home/elkin/MySQL/TEAM/BARE/5.0 · 80d3415b
      unknown authored
      into  dsl-hkibras1-ff5dc300-70.dhcp.inet.fi:/tmp/merge_5.0
      
      
      80d3415b
  2. 29 May, 2007 8 commits
    • unknown's avatar
      bug#22725 · 9a1e9de9
      unknown authored
      combining the final result variable in such way that either option of the test execution
      will yield zero.
      
      
      mysql-test/r/binlog_killed.result:
        results changed
      mysql-test/t/binlog_killed.test:
        there are two options for the test passing:
        1. no rows inserted and the INSERT gets killed, then there is no INSERT query in binlog
        2. all rows inserted, then INSERT gets to binlog and error_code is zero
      9a1e9de9
    • unknown's avatar
      bug#22725 · 54e1f2f0
      unknown authored
      tests refining, see binlog_killed.test file for details
      
      
      mysql-test/r/binlog_killed.result:
        results changed
      mysql-test/t/binlog_killed.test:
        killer conn waits for the first row to appear;
        log-disabling kill query since prey's id is not deterministic;
        correcting pattern to search in binlog for insert query;
      54e1f2f0
    • unknown's avatar
      bug#22725 · 5aec3d0f
      unknown authored
      merge with 5.0
      
      
      sql/sql_class.cc:
        THD::binlog_query receives killed status arg with default the same for Query_log_event
      sql/sql_class.h:
        relocation public binlog_query down to the point where killed_state is declared
      5aec3d0f
    • unknown's avatar
      Merge dsl-hkibras1-ff5dc300-70.dhcp.inet.fi:/home/elkin/MySQL/TEAM/BARE/5.0 · f3734099
      unknown authored
      into  dsl-hkibras1-ff5dc300-70.dhcp.inet.fi:/tmp/merge_5.0
      
      
      sql/sql_insert.cc:
        Auto merged
      f3734099
    • unknown's avatar
      bug#22725 · 70a530e4
      unknown authored
      refining the test.
      
      
      mysql-test/t/binlog_killed.test:
        due to killing reap may catch an error though it's indeterministic.
      70a530e4
    • unknown's avatar
      bug#22725 · daa7b8a5
      unknown authored
      result file updated
      
      
      mysql-test/r/binlog_killed.result:
        results updated
      daa7b8a5
    • unknown's avatar
      Bug#27044 replicated with unique field ndb table allows duplkey inserts · 814e4dd2
      unknown authored
      The bug in that slave version of a table with unique field still was
      able to execute INSERT query as replace whereas it's impossible on master.
      
      The reason of this artifact is wrong usage of ndb->extra:s.
      
      Fixed with resetting flags at do_after.
      There is open issue with symmetrical resetting
         table->file->extra(HA_EXTRA_NO_IGNORE_NO_KEY)
      which i had to hand to bug#27077.
      The test for the current bug was committed in a cset for bug#27320.
      
      
      sql/log_event.cc:
        fixing do_after_row_operation to reset the effect of the extra engine's 
        flags set at do_before;
        comments on meaning of extra flags added;
        execution of table->file->ha_end_bulk_insert() in do_after is not dependant on error;
      814e4dd2
    • unknown's avatar
      Bug#22725 Replication outages from ER_SERVER_SHUTDOWN (1053) set in replication events · 00710d17
      unknown authored
        
      Refining the tests since pb revealed the older version's fragality - the error from SF() due to killed
      may be different on different env:s.
      DBUG_ASSERT instead of assert.
      
      
      mysql-test/r/binlog_killed.result:
        new result file
      mysql-test/t/binlog_killed.test:
        regression for bug#22725 simplified. tests for bug27563, BUG#27565 made inactive.
      sql/sql_insert.cc:
        DBUG_ASSERT
      00710d17
  3. 28 May, 2007 6 commits
    • unknown's avatar
      Merge dsl-hkibras1-ff5dc300-70.dhcp.inet.fi:/home/elkin/MySQL/TEAM/BARE/5.0 · 4ecc9035
      unknown authored
      into  dsl-hkibras1-ff5dc300-70.dhcp.inet.fi:/tmp/merge_5.0
      
      
      sql/log_event.cc:
        Auto merged
      sql/log_event.h:
        Auto merged
      sql/sql_class.h:
        Auto merged
      sql/sql_insert.cc:
        merge with 5.0 bug#22725
      sql/sql_update.cc:
        merge with 5.0 bug#22725
      4ecc9035
    • unknown's avatar
      Bug#22725 Replication outages from ER_SERVER_SHUTDOWN (1053) set in replication events · f27bf2b4
      unknown authored
        
      The reason for the bug was that replaying of a query on slave could not be possible since its event
      was recorded with the killed error. Due to the specific of handling INSERT, which per-row-while-loop is 
      unbreakable to killing, the query on transactional table should have not appeared in binlog unless
      there was  a call to a stored routine that got interrupted with killing (and then there must be an error
      returned out of the loop).
         
      The offered solution added the following rule for binlogging of INSERT that accounts the above
      specifics:
      For INSERT on transactional-table if the error was not set the only raised flag
      is harmless and is ignored via masking out on time of creation of binlog event.
         
      For both table types the combination of raised error and KILLED flag indicates that there
      was potentially partial execution on master and consistency is under the question.
      In that case the code continues to binlog an event with an appropriate killed error.
       
      The fix relies on the specified behaviour of stored routine that must propagate the error 
      to the top level query handling if the thd->killed flag was raised in the routine execution.
         
      The patch adds an arg with the default killed-status-unset value to Query_log_event::Query_log_event.
      
      
      sql/log_event.cc:
        killed_status as the value of thd->killed can be passed as an arg to the constructor.
        if the value is different from the default the arg is set to the current thd->killed value.
        A caller might need to masquerade thd->killed with THD::NOT_KILLED.
        So far only mysql_insert() uses such explicit way to tell the constructor about killing status.
      sql/log_event.h:
        default arg to the constructor with meaning of killed status of the query. 
        if the arg is not explicitly provided the status of thd->killed will be snapshot 
        inside of the constuctor, which is potentially incorrect (see bug#27571)
      sql/sql_class.h:
        extending killed_state with no-state member.
      sql/sql_insert.cc:
        ignore the KILLED flag incl KILL_BAD_DATA when the INSERT query event 
        is created without an `error';
      sql/sql_update.cc:
        Suggestion how to fix bug#27571 as comments.
      mysql-test/r/binlog_killed.result:
        new result file
      mysql-test/t/binlog_killed.test:
        regression tests also apply for bug27563, BUG#27565
      f27bf2b4
    • unknown's avatar
      Added missing result file · aae1ff67
      unknown authored
      
      mysql-test/r/rpl_critical_errors.result:
        Missing result file
      aae1ff67
    • unknown's avatar
      Merge mysql.com:/nfsdisk1/lars/MERGE/mysql-5.0-merge · cf2facb5
      unknown authored
      into  mysql.com:/nfsdisk1/lars/MERGE/mysql-5.1-merge
      
      
      mysql-test/mysql-test-run.pl:
        Auto merged
      mysql-test/t/disabled.def:
        Auto merged
      sql/sql_load.cc:
        Auto merged
      cf2facb5
    • unknown's avatar
      Merge mysql.com:/nfsdisk1/lars/bkroot/mysql-5.1-new-rpl · a5caa4da
      unknown authored
      into  mysql.com:/nfsdisk1/lars/MERGE/mysql-5.1-merge
      
      
      mysql-test/mysql-test-run.pl:
        Auto merged
      mysql-test/t/disabled.def:
        Auto merged
      mysql-test/t/rpl_row_mysqlbinlog.test:
        Auto merged
      sql/sql_load.cc:
        Auto merged
      BitKeeper/deleted/.del-.del-rpl_critical_errors.result:
        Delete: BitKeeper/deleted/.del-rpl_critical_errors.result
      a5caa4da
    • unknown's avatar
      Merge mysql.com:/nfsdisk1/lars/bkroot/mysql-5.0-rpl · 9f757559
      unknown authored
      into  mysql.com:/nfsdisk1/lars/MERGE/mysql-5.0-merge
      
      
      mysql-test/mysql-test-run.pl:
        Auto merged
      mysql-test/t/disabled.def:
        Auto merged
      sql/sql_load.cc:
        Auto merged
      9f757559
  4. 24 May, 2007 10 commits
  5. 23 May, 2007 10 commits