An error occurred fetching the project authors.
  1. 14 Dec, 2007 1 commit
    • unknown's avatar
      BUG#32407: Impossible to do point-in-time recovery from older binlog · 30c64089
      unknown authored
      Problem: it is unsafe to read base64-printed events without first
      reading the Format_description_log_event (FD).  Currently, mysqlbinlog
      cannot print the FD.
      
      As a side effect, another bug has also been fixed: When mysqlbinlog
      --start-position=X was specified, no ROLLBACK was printed. I changed
      this, so that ROLLBACK is always printed.
      
      This patch does several things:
      
       - Format_description_log_event (FD) now print themselves in base64
         format.
      
       - mysqlbinlog is now able to print FD events.  It has three modes:
          --base64-output=auto    Print row events in base64 output, and print
                                  FD event.  The FD event is printed even if
                                  it is outside the range specified with
                                  --start-position, because it would not be
                                  safe to read row events otherwise. This is
                                  the default.
      
          --base64-output=always  Like --base64-output=auto, but also print
                                  base64 output for query events.  This is
                                  like the old --base64-output flag, which
                                  is also a shorthand for
                                  --base64-output=always
      
          --base64-output=never   Never print base64 output, generate error if
                                  row events occur in binlog.  This is
                                  useful to suppress the FD event in binlogs
                                  known not to contain row events (e.g.,
                                  because BINLOG statement is unsafe,
                                  requires root privileges, is not SQL, etc)
      
       - the BINLOG statement now handles FD events correctly, by setting
         the thread's rli's relay log's description_event_for_exec to the
         loaded event.
      
         In fact, executing a BINLOG statement is almost the same as reading
         an event from a relay log.  Before my patch, the code for this was
         separated (exec_relay_log_event in slave.cc executes events from
         the relay log, mysql_client_binlog_statement in sql_binlog.cc
         executes BINLOG statements).  I needed to augment
         mysql_client_binlog_statement to do parts of what
         exec_relay_log_event does.  Hence, I did a small refactoring and
         moved parts of exec_relay_log_event to a new function, which I
         named apply_event_and_update_pos.  apply_event_and_update_pos is
         called both from exec_relay_log_event and from
         mysql_client_binlog_statement.
      
       - When a non-FD event is executed in a BINLOG statement, without
         previously executing a FD event in a BINLOG statement, it generates
         an error, because that's unsafe.  I took a new error code for that:
         ER_NO_FORMAT_DESCRIPTION_EVENT_BEFORE_BINLOG_STATEMENTS.
      
         In order to get a decent error message containing the name of the
         event, I added the class method char*
         Log_event::get_type_str(Log_event_type type), which returns a
         string name for the given Log_event_type.  This is just like the
         existing char* Log_event::get_type_str(), except it is a class
         method that takes the log event type as parameter.
      
         I also added PRE_GA_*_ROWS_LOG_EVENT to Log_event::get_type_str(),
         so that names of old rows event are properly printed.
      
       - When reading an event, I added a check that the event type is known
         by the current Format_description_log_event. Without this, it may
         crash on bad input (and I was struck by this several times).
      
       - I patched the following test cases, which all contain BINLOG
         statements for row events which must be preceded by BINLOG
         statements for FD events:
          - rpl_bug31076
      
      While I was here, I fixed some small things in log_event.cc:
      
       - replaced hard-coded 4 by EVENT_TYPE_OFFSET in 3 places
      
       - replaced return by DBUG_VOID_RETURN in one place
      
       - The name of the logfile can be '-' to indicate stdin.  Before my
         patch, the code just checked if the first character is '-'; now it
         does a full strcmp().  Probably, all arguments that begin with a -
         are already handled somewhere else as flags, but I still think it
         is better that the code reflects what it is supposed to do, with as
         little dependencies as possible on other parts of the code.  If we
         one day implement that all command line arguments after -- are
         files (as most unix tools do), then we need this.
      
      I also fixed the following in slave.cc:
      
       - next_event() was declared twice, and queue_event was not static but
         should be static (not used outside the file).
      
      
      client/client_priv.h:
        Declared the new option for base64 output.
      client/mysqlbinlog.cc:
         - Change from using the two-state command line option
          "default/--base64-output" to the three-state
          "--base64-output=[never|auto|always]"
         - Print the FD event even if it is outside the --start-position range.
         - Stop if a row event is about to be printed without a preceding FD
           event.
         - Minor fixes:
            * changed 4 to EVENT_TYPE_OFFSET in some places
            * Added comments
            * before, "mysqlbinlog -xyz" read from stdin; now it does not
              (only "mysqlbinlog -" reads stdin).
      mysql-test/r/mysqlbinlog2.result:
        Updated result file: mysqlbinlog now prints ROLLBACK always.
      mysql-test/suite/binlog/t/disabled.def:
        The test must be disabled since it reveals another bug: see BUG#33247.
      mysql-test/suite/rpl/r/rpl_bug31076.result:
        Updated result file
      mysql-test/suite/rpl/r/rpl_row_mysqlbinlog.result:
        Updated result file
      mysql-test/suite/rpl/t/rpl_bug31076.test:
        Had to add explicit Format_description_log_event before other BINLOG
        statements
      mysql-test/t/mysqlbinlog2.test:
        we must suppress base64 output in result file because it contains a
        timestamp
      sql/log_event.cc:
         - Made FD events able to print themselves
         - Added check that the current FD event knows about the event type, when
           an event is about to be read. (Hint to reviewers: I had to re-indent
           a big block because of this; use diff -b)
            * To get a decent error message, I also added a class method
              const char* Log_event::get_type_str(Log_event_type)
              which converts number to event type string without having a
              Log_event object.
            * Made Log_event::get_type_str aware of PRE_GA_*_ROWS_LOG_EVENT.
         - Minor fixes:
            * Changed return to DBUG_VOID_RETURN
      sql/log_event.h:
         - Declared enum to describe the three base64_output modes
         - Use the enum instead of a flag
         - Declare the new class method get_type_str (see log_event.cc)
      sql/share/errmsg.txt:
        Added error msg.
      sql/slave.cc:
         - Factored out part of exec_relay_log_event to the new function
           apply_event_and_update_pos, because that code is needed when executing
           BINLOG statements. (this is be functionally equivalent to the
           previous code, except: (1) skipping events is now optional, controlled
           by a parameter to the new function (2) the return value of
           exec_relay_log_event has changed; see next item).
         - Changed returned error value to always be 1. Before, it would return
           the error value from apply_log_event, which was unnecessary. This
           change is safe because the exact return value of exec_relay_log_event
           is never examined; it is only tested to be ==0 or !=0.
         - Added comments describing exec_relay_log_event and
           apply_event_and_update_pos.
         - Minor fixes:
            * Removed duplicate declaration of next_event, made queue_event
              static.
            * Added doxygen code to include this file.
      sql/slave.h:
        Declared the new apply_event_and_update_pos
      sql/sql_binlog.cc:
         - Made mysql_binlog_statement set the current FD event when the given
           event is an FD event. This entails using the new function
           apply_event_and_update_pos from slave.cc instead of just calling the
           ev->apply method.
         - Made mysql_binlog_statement fail if the first BINLOG statement is not
           an FD event.
      mysql-test/suite/binlog/r/binlog_base64_flag.result:
        New test file needs new result file
      mysql-test/suite/binlog/t/binlog_base64_flag.test:
        Added test case to verify that:
         - my patch fixes the bug
         - the new --base64-output flag works as expected
         - base64 events not preceded by an FD event give an error
         - an event of a type not known by the current FD event fails cleanly.
      mysql-test/suite/binlog/std_data/binlog-bug32407.000001:
        BitKeeper file /home/sven/bk/b32407-5.1-new-rpl-mysqlbinlog_base64/mysql-test/suite/binlog/std_data/binlog-bug32407.000001
      30c64089
  2. 08 Aug, 2007 1 commit
  3. 07 Jun, 2007 1 commit
    • unknown's avatar
      Bug#28369 rpl test cases fail with binlog disabled · a3d3e25c
      unknown authored
       - Turn on binlog only for tests that need it
       - Skip those tests if --skip-binlog is used
      
      
      BitKeeper/deleted/.del-ctype_cp932_notembedded.result:
        Rename: mysql-test/r/ctype_cp932_notembedded.result -> BitKeeper/deleted/.del-ctype_cp932_notembedded.result
      BitKeeper/deleted/.del-ctype_cp932_notembedded.test:
        Rename: mysql-test/t/ctype_cp932_notembedded.test -> BitKeeper/deleted/.del-ctype_cp932_notembedded.test
      mysql-test/include/master-slave.inc:
        Need binlog
      mysql-test/lib/mtr_cases.pl:
        Turn on binlog only for tests that need it
        Skip those tests if --skip-binlog is used
      mysql-test/r/sp_trans.result:
        Moved to "sp_binlog"
      mysql-test/t/binlog.test:
        Need binlog
      mysql-test/t/blackhole.test:
        Need binlog
      mysql-test/t/ctype_cp932_binlog.test:
        Need binlog
      mysql-test/t/ctype_ucs_binlog.test:
        Need binlog
      mysql-test/t/drop_temp_table.test:
        Need binlog
      mysql-test/t/flush_block_commit_notembedded.test:
        Need binlog
      mysql-test/t/innodb.test:
        Need binlog
      mysql-test/t/insert_select-binlog.test:
        Need binlog
      mysql-test/t/mix_innodb_myisam_binlog.test:
        Need binlog
      mysql-test/t/mysqlbinlog-cp932.test:
        Need binlog
      mysql-test/t/mysqlbinlog.test:
        Need binlog
      mysql-test/t/mysqlbinlog2.test:
        Need binlog
      mysql-test/t/mysqldump.test:
        Need binlog
      mysql-test/t/rpl000015.test:
        Need binlog
      mysql-test/t/rpl000017.test:
        Need binlog
      mysql-test/t/rpl_rotate_logs.test:
        Need binlog
      mysql-test/t/sp_trans.test:
        Moved to "sp_binlog"
      mysql-test/t/user_var-binlog.test:
        Need binlog
      mysql-test/r/sp_trans_log.result:
        New BitKeeper file ``mysql-test/r/sp_trans_log.result''
      mysql-test/t/sp_trans_log.test:
        New BitKeeper file ``mysql-test/t/sp_trans_log.test''
      a3d3e25c
  4. 31 May, 2007 1 commit
    • unknown's avatar
      some test cases cannot run with --skip-log-bin · 090c7396
      unknown authored
      mysql-test/r/mix_innodb_myisam_binlog.result:
        have_log_bin.inc increases transaction count by onw
      mysql-test/t/binlog.test:
        test obviously requires binlog
      mysql-test/t/blackhole.test:
        test requires binlog for now
      mysql-test/t/ctype_cp932_binlog.test:
        test requires binlog
      mysql-test/t/ctype_cp932_notembedded.test:
        test requires binlog for now
      mysql-test/t/ctype_ucs_binlog.test:
        test requires binlog
      mysql-test/t/drop_temp_table.test:
        test requires binlog for now
      mysql-test/t/flush_block_commit_notembedded.test:
        test requires binlog for now
      mysql-test/t/insert_select-binlog.test:
        test requires binlog
      mysql-test/t/mix_innodb_myisam_binlog.test:
        test requires binlog
      mysql-test/t/mysqlbinlog-cp932.test:
        test requires binlog
      mysql-test/t/mysqlbinlog.test:
        test requires binlog
      mysql-test/t/mysqlbinlog2.test:
        test requires binlog
      mysql-test/t/mysqltest.test:
        test requires binlog for now
      mysql-test/t/sp_trans.test:
        test requires binlog for now
      mysql-test/t/user_var-binlog.test:
        test requires binlog for now
      090c7396
  5. 23 Apr, 2007 1 commit
    • unknown's avatar
      Contributed patch from Jorge Bernal Ordovás. CLA#42 · 697dc389
      unknown authored
      Bug#27894: mysqlbinlog formats timestamp wrong in comment
      
      Date stamps lack zero padding, and so are meaningless.
      
      Implement minimum-width zero padding for the percent-escape sequences
      used in the logging code.
      
      
      mysql-test/r/mysqlbinlog2.result:
        Include the long form, so we notice that it may be broken.  Replace
        away specific elements that vary from run to run.
      mysql-test/t/mysqlbinlog2.test:
        Include the long form, so we notice that it may be broken.  Replace
        away specific elements that vary from run to run.
      mysys/mf_iocache2.c:
        Implement minimum-width padding for printf-style percent-expressions.
      697dc389
  6. 05 Apr, 2007 1 commit
    • unknown's avatar
      Fixes for tests after merge from 5.0 · d6fba5d1
      unknown authored
      mysql-test/r/grant.result:
        Fixed a result. Editor added wrong characters.
      mysql-test/r/mysqlbinlog2.result:
        Fixed
      mysql-test/r/sp.result:
        Fixed a result, moved lines around.
      mysql-test/r/sp_trans.result:
        Fixed a result, moved lines around.
      mysql-test/t/mysqlbinlog2.test:
        Merged tests from 5.0
      mysql-test/t/sp_trans.test:
        Merged test from 5.0 and fixed to be compatible with 5.1
      sql/sql_class.cc:
        Merged from 5.0
      sql/sql_error.cc:
        Fixed push_warning()
      d6fba5d1
  7. 29 Mar, 2007 1 commit
    • unknown's avatar
      WL#3464: Add replication event to denote gap in replication · 37cf6529
      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''
      37cf6529
  8. 22 Mar, 2007 1 commit
    • unknown's avatar
      Bug#27171 mysqlbinlog produces different output depends from option -R · 8c76bd95
      unknown authored
      Server starts any binlog dump from Format_description_log_event,
      this shifted all offset calculations in mysqlbinlog and made it
      to stop the dump earlier than --stop-position. Now mysqlbinlog
      takes Format_description_log_event into account
      
      
      mysql-test/r/mysqlbinlog2.result:
        Bug#27171 mysqlbinlog produces different output depends from option -R
      mysql-test/t/mysqlbinlog2.test:
        Bug#27171 mysqlbinlog produces different output depends from option -R
      8c76bd95
  9. 20 Mar, 2007 1 commit
    • unknown's avatar
      BUG#22583: RBR between MyISAM and non-MyISAM tables containing a BIT · e14f13ba
      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''
      e14f13ba
  10. 14 Dec, 2006 1 commit
    • unknown's avatar
      Bug#17642 mysqlbinlog: Restore from row-based binlog fails · 3ff0a0d5
      unknown authored
      Problem: mysqlbinlog_base64 failed sporadically.
      
      Reason: Missing "flush logs" before running $MYSQL_BINLOG,
      which could start dumping the log file before server
      has finished writting into it.
      Fix:
      - implementing --force-if-open option to "mysqlbinlog"
      - adding --disable-force-if-open to make $MYSQL_BINLOG
        fail on non-closed log files, to garantee that nobody
        will forget "flush logs" in the future.
      - adding "flush logs" into all affected tests.
      
      
      client/mysqlbinlog.cc:
        Implementing --force-if-open option with TRUE by default
      mysql-test/mysql-test-run.pl:
        Using --disable-force-if-open for all tests to avoid
        sporadic test failures because of running "mysqlbinlog"
        on a non-flushed binlog files.
      mysql-test/r/binlog_row_mix_innodb_myisam.result:
        FLush log before running dumping.
      mysql-test/r/binlog_stm_mix_innodb_myisam.result:
        FLush log before running dumping.
      mysql-test/r/mysqlbinlog.result:
        FLush log before running dumping.
      mysql-test/r/mysqlbinlog2.result:
        FLush log before running dumping.
      mysql-test/r/mysqlbinlog_base64.result:
        FLush log before running dumping.
      mysql-test/r/user_var-binlog.result:
        FLush log before running dumping.
      mysql-test/t/binlog_row_mix_innodb_myisam.test:
        FLush log before running dumping.
      mysql-test/t/binlog_stm_mix_innodb_myisam.test:
        FLush log before running dumping.
      mysql-test/t/mysqlbinlog.test:
        FLush log before running dumping.
        
        Adding new tests:
        - checking that $MYSQL_BINLOG returns an error on a non-closed binlog
        file because of --disable-force-if-open
        - checking that it does not return an error with --force-if-open
      mysql-test/t/mysqlbinlog2.test:
        FLush log before running dumping.
      mysql-test/t/mysqlbinlog_base64.test:
        FLush log before running dumping.
      mysql-test/t/user_var-binlog.test:
        FLush log before running dumping.
      3ff0a0d5
  11. 30 Aug, 2006 1 commit
    • unknown's avatar
      Changes made according to HLD/LLD. · f225a87b
      unknown authored
         The following is an excerption from the WL.
            
         1. Change so that MIXED is default format
            1.1 to change the default for command line --binlog-format
            1.2 to alter global_system_variables.binlog_format calculation
                basing on command line --binlog-format parameter and 
                its default.
         2. Change test suite so that more testing is done by MIXED format.
            2.1 to check if there are test cases requiring --binlog-foramt=statement via
                `source include/have_binlog_format_statement.inc' and affected by 
                altering the latter to be "mixed".
            2.2 to check the content of such vulnerable cases to find if
                extending to the mixed does not modify results. In that case simply
                substitute source arguments as explained.
            2.3 if a test in mixed mode deals with features triggering
                row-binlogging then if necessary we can switch explicitly
                to statement mode or create another test to run with 
                non-recommended STATEMENT mode
         
                Particullarily, extracting INSERT DELAYED 
                binlogging subtest for statement mode is performed, and 
                the snippet is moved into a separate test file.
                Note that since now all three modes verify this use case
                through 3 different tests.
         
         No changes in item 3 of HLD appeared to be needed.
      
      
      mysql-test/extra/binlog_tests/binlog.test:
        Moving INSERT DELAYED verification section into separate file. The latter is sourced
        from two different files: the current one and a newly created for STATEMENT
        mode check.
      mysql-test/extra/rpl_tests/rpl_loaddata.test:
        require mixed_or_statement
      mysql-test/extra/rpl_tests/rpl_stm_000001.test:
        require mixed_or_statement
      mysql-test/extra/rpl_tests/rpl_stm_charset.test:
        require mixed_or_statement
      mysql-test/r/binlog_stm_binlog.result:
        new result to correspond to MIXED mode.
      mysql-test/r/rpl_rbr_to_sbr.result:
        result changed
      mysql-test/t/archive.test:
        require mixed_or_statement
      mysql-test/t/binlog_stm_binlog.test:
        require exclusive mixed format because of INSERT DELAYED.
      mysql-test/t/binlog_stm_blackhole.test:
        require mixed_or_statement
      mysql-test/t/binlog_stm_ctype_cp932.test:
        require mixed_or_statement
      mysql-test/t/binlog_stm_ctype_ucs.test:
        require mixed_or_statement
      mysql-test/t/binlog_stm_drop_tmp_tbl.test:
        require mixed_or_statement
      mysql-test/t/binlog_stm_innodb_stat.test:
        require mixed_or_statement
      mysql-test/t/binlog_stm_insert_select.test:
        require mixed_or_statement
      mysql-test/t/binlog_stm_mix_innodb_myisam.test:
        require mixed_or_statement
      mysql-test/t/create_select_tmp.test:
        require mixed_or_statement
      mysql-test/t/ctype_cp932_binlog_stm.test:
        require mixed_or_statement
      mysql-test/t/date_formats.test:
        MIXED case appended to the replace instruction
      mysql-test/t/mysqlbinlog.test:
        require mixed_or_statement
      mysql-test/t/mysqlbinlog2.test:
        require mixed_or_statement
      mysql-test/t/ndb_multi.test:
        require mixed_or_statement
      mysql-test/t/rpl000013.test:
        require mixed_or_statement
      mysql-test/t/rpl_heap.test:
        require mixed_or_statement
      mysql-test/t/rpl_loaddata_s.test:
        require mixed_or_statement
      mysql-test/t/rpl_mixed_ddl_dml.test:
        require mixed_or_statement
      mysql-test/t/rpl_rbr_to_sbr.test:
        Rather meaningless line is discarded.
        The test does not loose anything without it and without considering the WL.
      mysql-test/t/rpl_rewrt_db.test:
        require mixed_or_statement
      mysql-test/t/rpl_rotate_logs.test:
        require mixed_or_statement
      mysql-test/t/rpl_stm_EE_err2.test:
        require mixed_or_statement
      mysql-test/t/rpl_stm_flsh_tbls.test:
        require mixed_or_statement
      mysql-test/t/rpl_stm_log.test:
        require mixed_or_statement
      mysql-test/t/rpl_stm_max_relay_size.test:
        require mixed_or_statement
      mysql-test/t/rpl_stm_multi_query.test:
        require mixed_or_statement
      mysql-test/t/rpl_stm_mystery22.test:
        require mixed_or_statement
      mysql-test/t/rpl_stm_no_op.test:
        require mixed_or_statement
      mysql-test/t/rpl_stm_reset_slave.test:
        require mixed_or_statement
      mysql-test/t/rpl_stm_until.test:
        require mixed_or_statement
      mysql-test/t/rpl_temp_table.test:
        require mixed_or_statement
      mysql-test/t/rpl_trigger.test:
        require mixed_or_statement
      mysql-test/t/rpl_trunc_temp.test:
        require mixed_or_statement
      mysql-test/t/user_var-binlog.test:
        require mixed_or_statement
      sql/mysqld.cc:
        Implementation of making BINLOG_FORMAT_MIXED to be the default of
        global_system_variables.binlog_format. Not in the case of embedded.
      mysql-test/extra/binlog_tests/binlog_insert_delayed.test:
        Snippend sourced from two tests to verify INSERT DELAYED in all three binlog formats.
      mysql-test/include/have_binlog_format_mixed.inc:
        Part of exclusive MIXED format requirement
      mysql-test/include/have_binlog_format_mixed_or_statement.inc:
        requirement to have mixed or statement. Most of the tests with STATEMENT format indeed
        are tolerant to MIXED format to yield the same result files. There are few exception
        because of features triggering RBR events when MIXED format.
      mysql-test/r/binlog_statement_insert_delayed.result:
        BitKeeper file /home/elkin/MySQL/TEAM/FIXES/5.1/wl3368_mixed_default/mysql-test/r/binlog_statement_insert_delayed.result
      mysql-test/r/have_binlog_format_mixed.require:
        Exclusive MIXED format
      mysql-test/t/binlog_statement_insert_delayed.test:
        BitKeeper file /home/elkin/MySQL/TEAM/FIXES/5.1/wl3368_mixed_default/mysql-test/t/binlog_statement_insert_delayed.test
      f225a87b
  12. 24 Jan, 2006 1 commit
    • unknown's avatar
      Make it possible to run mysql-test-run.pl with default test suite in different vardir. · 219af34a
      unknown authored
      mysql-test/include/have_outfile.inc:
        Use MYSQLTEST_VARDIR
      mysql-test/include/test_outfile.inc:
        Use MYSQLTEST_VARDIR
      mysql-test/mysql-test-run.pl:
        Create variable $MYSQLTEST_VARDIR that points to  the vardir
        Don't create a symlink from var/ to the physical vardir if it's somewhere else
        Setup a symlink(or copy dir on windows) for std_data so it is available in the physical vardir
        Use "../tmp" as slave-load-tmpdir, since the server is started in var/master-data and slave in var/slave-data they will both find the dumps in "../tmp"
      mysql-test/mysql-test-run.sh:
        Export MYSQLTEST_VARDIR, always pointing at mysql-test/var
      mysql-test/r/backup.result:
        Use MYSQLTEST_VARDIR
      mysql-test/r/blackhole.result:
        Use "../std_data_ln" to find std_data files
      mysql-test/r/loaddata.result:
        Use "../std_data_ln" to find std_data files
      mysql-test/r/mysqlbinlog.result:
        Use "../std_data_ln" to find std_data files
      mysql-test/r/mysqltest.result:
        Use MYSQLTEST_VARDIR
      mysql-test/r/outfile.result:
        Use MYSQLTEST_VARDIR
      mysql-test/r/query_cache.result:
        Add missing drop function
      mysql-test/r/rpl000001.result:
        Use "../std_data_ln" to find std_data files
      mysql-test/r/rpl000004.result:
        Use "../std_data_ln" to find std_data files
      mysql-test/r/rpl_innodb.result:
        Use "../std_data_ln" to find std_data files
      mysql-test/r/rpl_loaddata.result:
        Use "../std_data_ln" to find std_data files
      mysql-test/r/rpl_loaddata_rule_m.result:
        Use "../std_data_ln" to find std_data files
      mysql-test/r/rpl_loaddata_rule_s.result:
        Use "../std_data_ln" to find std_data files
      mysql-test/r/rpl_loaddatalocal.result:
        Use MYSQLTEST_VARDIR
      mysql-test/r/rpl_log.result:
        Use "../std_data_ln" to find std_data files
      mysql-test/r/rpl_misc_functions.result:
        Use MYSQLTEST_VARDIR
      mysql-test/r/rpl_replicate_do.result:
        Use "../std_data_ln" to find std_data files
      mysql-test/r/rpl_rewrite_db.result:
        Use "../std_data_ln" to find std_data files
      mysql-test/r/rpl_timezone.result:
        Use "../std_data_ln" to find std_data files
      mysql-test/r/symlink.result:
        Use MYSQLTEST_VARDIR
      mysql-test/r/trigger.result:
        Use "../std_data_ln" to find std_data files
      mysql-test/r/view.result:
        Use "../std_data_ln" to find std_data files
      mysql-test/r/warnings.result:
        Use "../std_data_ln" to find std_data files
      mysql-test/t/backup-master.sh:
        Use MYSQLTEST_VARDIR
      mysql-test/t/backup.test:
        Use MYSQLTEST_VARDIR
      mysql-test/t/blackhole.test:
        Use "../std_data_ln" to find std_data files
      mysql-test/t/ctype_ucs_binlog.test:
        Use MYSQLTEST_VARDIR
      mysql-test/t/im_daemon_life_cycle-im.opt:
        Use MYSQLTEST_VARDIR
      mysql-test/t/im_options_set.imtest:
        Use MYSQLTEST_VARDIR
      mysql-test/t/im_options_unset.imtest:
        Use MYSQLTEST_VARDIR
      mysql-test/t/loaddata.test:
        Use "../std_data_ln" to find std_data files
      mysql-test/t/myisam.test:
        Use MYSQLTEST_VARDIR
      mysql-test/t/mysqlbinlog.test:
        Use "../std_data_ln" to find std_data files
      mysql-test/t/mysqlbinlog2.test:
        Use MYSQLTEST_VARDIR
      mysql-test/t/mysqldump.test:
        Use MYSQLTEST_VARDIR
      mysql-test/t/mysqltest.test:
        Use MYSQLTEST_VARDIR
      mysql-test/t/ndb_autodiscover.test:
        Use MYSQLTEST_VARDIR
      mysql-test/t/outfile.test:
        Use MYSQLTEST_VARDIR
      mysql-test/t/query_cache.test:
        Add missing drop function
      mysql-test/t/repair.test:
        Use MYSQLTEST_VARDIR
      mysql-test/t/rpl000001.test:
        Use "../std_data_ln" to find std_data files
      mysql-test/t/rpl000004.test:
        Use "../std_data_ln" to find std_data files
      mysql-test/t/rpl000009.test:
        Use MYSQLTEST_VARDIR
      mysql-test/t/rpl000015-slave.sh:
        Use MYSQLTEST_VARDIR
      mysql-test/t/rpl000017-slave.sh:
        Use MYSQLTEST_VARDIR
      mysql-test/t/rpl_EE_error.test:
        Use MYSQLTEST_VARDIR
      mysql-test/t/rpl_charset.test:
        Use MYSQLTEST_VARDIR
      mysql-test/t/rpl_drop_db.test:
        Use MYSQLTEST_VARDIR
      mysql-test/t/rpl_flush_log_loop-master.opt:
        Use MYSQLTEST_VARDIR
      mysql-test/t/rpl_flush_log_loop-master.sh:
        Use MYSQLTEST_VARDIR
      mysql-test/t/rpl_flush_log_loop-slave.opt:
        Use MYSQLTEST_VARDIR
      mysql-test/t/rpl_flush_log_loop-slave.sh:
        Use MYSQLTEST_VARDIR
      mysql-test/t/rpl_innodb.test:
        Use "../std_data_ln" to find std_data files
      mysql-test/t/rpl_loaddata.test:
        Use "../std_data_ln" to find std_data files
      mysql-test/t/rpl_loaddata_rule_m.test:
        Use "../std_data_ln" to find std_data files
      mysql-test/t/rpl_loaddata_rule_s.test:
        Use "../std_data_ln" to find std_data files
      mysql-test/t/rpl_loaddatalocal.test:
        Use MYSQLTEST_VARDIR
      mysql-test/t/rpl_log.test:
        Use "../std_data_ln" to find std_data files
      mysql-test/t/rpl_misc_functions-slave.sh:
        Use MYSQLTEST_VARDIR
      mysql-test/t/rpl_misc_functions.test:
        Use MYSQLTEST_VARDIR
      mysql-test/t/rpl_replicate_do.test:
        Use "../std_data_ln" to find std_data files
      mysql-test/t/rpl_rewrite_db.test:
        Use "../std_data_ln" to find std_data files
      mysql-test/t/rpl_rotate_logs-slave.sh:
        Use MYSQLTEST_VARDIR
      mysql-test/t/rpl_rotate_logs.test:
        Use MYSQLTEST_VARDIR
      mysql-test/t/rpl_timezone.test:
        Use MYSQLTEST_VARDIR
      mysql-test/t/show_check.test:
        Use MYSQLTEST_VARDIR
      mysql-test/t/sp-destruct.test:
        Use MYSQLTEST_VARDIR
      mysql-test/t/symlink.test:
        Use MYSQLTEST_VARDIR
      mysql-test/t/temp_table-master.opt:
        Use MYSQLTEST_VARDIR
      mysql-test/t/trigger-compat.test:
        Use MYSQLTEST_VARDIR
      mysql-test/t/trigger-grant.test:
        Use MYSQLTEST_VARDIR
      mysql-test/t/trigger.test:
        Use "../std_data_ln" to find std_data files
      mysql-test/t/type_varchar.test:
        Use MYSQLTEST_VARDIR
      mysql-test/t/user_var-binlog.test:
        Use MYSQLTEST_VARDIR
      mysql-test/t/view.test:
        Use "../std_data_ln" to find std_data files
      mysql-test/t/warnings.test:
        Use "../std_data_ln" to find std_data files
      mysql-test/include/sourced.inc:
        New BitKeeper file ``mysql-test/include/sourced.inc''
      mysql-test/include/sourced1.inc:
        New BitKeeper file ``mysql-test/include/sourced1.inc''
      219af34a
  13. 22 Dec, 2005 1 commit
    • unknown's avatar
      WL#1012: All changes as one single changeset. · 00d4af11
      unknown authored
      This includes both code and test cases.
      
      
      BitKeeper/deleted/.del-ctype_ucs_binlog.result~280d136b1a0bcf17:
        Delete: mysql-test/r/ctype_ucs_binlog.result
      BitKeeper/deleted/.del-rpl_delete_all.result~7c050d592614b3f:
        Delete: mysql-test/r/rpl_delete_all.result
      BitKeeper/deleted/.del-rpl000013-slave.opt~18266ad8a2403e8d:
        Delete: mysql-test/t/rpl000013-slave.opt
      BitKeeper/deleted/.del-rpl_delete_all.test~700a1490277780e0:
        Delete: mysql-test/t/rpl_delete_all.test
      mysql-test/extra/binlog_tests/binlog.test:
        Import patch wl1012.patch
      mysql-test/extra/binlog_tests/blackhole.test:
        Import patch wl1012.patch
      mysql-test/extra/binlog_tests/ctype_cp932.test:
        Import patch wl1012.patch
      mysql-test/extra/binlog_tests/ctype_cp932_binlog.test:
        Import patch wl1012.patch
      mysql-test/extra/binlog_tests/ctype_ucs_binlog.test:
        Import patch wl1012.patch
      mysql-test/extra/binlog_tests/drop_temp_table.test:
        Import patch wl1012.patch
      mysql-test/extra/binlog_tests/insert_select-binlog.test:
        Import patch wl1012.patch
      mysql-test/extra/binlog_tests/mix_innodb_myisam_binlog.test:
        Import patch wl1012.patch
      mysql-test/extra/rpl_tests/rpl_ddl.test:
        Import patch wl1012.patch
      mysql-test/extra/rpl_tests/rpl_deadlock.test:
        Import patch wl1012.patch
      mysql-test/extra/rpl_tests/rpl_err_ignoredtable.test:
        Import patch wl1012.patch
      mysql-test/extra/rpl_tests/rpl_flsh_tbls.test:
        Import patch wl1012.patch
      mysql-test/extra/rpl_tests/rpl_loaddata_m.test:
        Import patch wl1012.patch
      mysql-test/extra/rpl_tests/rpl_log.test:
        Import patch wl1012.patch
      mysql-test/extra/rpl_tests/rpl_max_relay_size.test:
        Import patch wl1012.patch
      mysql-test/extra/rpl_tests/rpl_multi_query.test:
        Import patch wl1012.patch
      mysql-test/extra/rpl_tests/rpl_reset_slave.test:
        Import patch wl1012.patch
      mysql-test/extra/rpl_tests/rpl_stm_000001.test:
        Import patch wl1012.patch
      mysql-test/extra/rpl_tests/rpl_stm_EE_err.test:
        Import patch wl1012.patch
      mysql-test/extra/rpl_tests/rpl_stm_charset.test:
        Import patch wl1012.patch
      mysql-test/extra/rpl_tests/rpl_user_variables.test:
        Import patch wl1012.patch
      mysql-test/r/binlog_stm_binlog.result:
        Import patch wl1012.patch
      mysql-test/r/binlog_stm_blackhole.result:
        Import patch wl1012.patch
      mysql-test/r/binlog_stm_ctype_cp932.result:
        Import patch wl1012.patch
      mysql-test/r/binlog_stm_ctype_ucs.result:
        Import patch wl1012.patch
      mysql-test/r/binlog_stm_drop_tmp_tbl.result:
        Import patch wl1012.patch
      mysql-test/r/binlog_stm_insert_select.result:
        Import patch wl1012.patch
      mysql-test/r/binlog_stm_mix_innodb_myisam.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_000012.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_000015.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_deadlock_innodb.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_flushlog_loop.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_loaddata_s.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_000001.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_EE_err.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_charset.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_ddl.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_err_ignoredtable.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_flsh_tbls.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_loaddata_m.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_log.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_max_relay_size.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_multi_query.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_mystery22.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_reset_slave.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_rewrt_db.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_sp.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_timezone.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_until.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_user_variables.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_stm_view.result:
        Import patch wl1012.patch
      mysql-test/t/binlog_row_binlog-master.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_000012.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_000015-slave.sh:
        Import patch wl1012.patch
      mysql-test/t/rpl_000015.slave-mi:
        Import patch wl1012.patch
      mysql-test/t/rpl_000015.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_deadlock_innodb-slave.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_flushlog_loop-master.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_flushlog_loop-master.sh:
        Import patch wl1012.patch
      mysql-test/t/rpl_flushlog_loop-slave.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_flushlog_loop-slave.sh:
        Import patch wl1012.patch
      mysql-test/t/rpl_flushlog_loop.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_loaddata_s-slave.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_loaddata_s.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_000001-slave.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_err_ignoredtable-slave.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_loaddata_m-master.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_log-master.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_log-slave.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_mystery22.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_rewrt_db-slave.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_rewrt_db.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_sp-master.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_sp-slave.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_sp.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_timezone-master.opt:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_timezone-slave.opt:
        Import patch wl1012.patch
      BUILD/SETUP.sh:
        Import patch wl1012.patch
      Makefile.am:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_timezone.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_until.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_stm_view.test:
        Import patch wl1012.patch
      client/Makefile.am:
        Import patch wl1012.patch
      client/client_priv.h:
        Import patch wl1012.patch
      client/mysqlbinlog.cc:
        Import patch wl1012.patch
      configure.in:
        Import patch wl1012.patch
      include/Makefile.am:
        Import patch wl1012.patch
      include/base64.h:
        Import patch wl1012.patch
      include/config-win.h:
        Import patch wl1012.patch
      include/my_base.h:
        Import patch wl1012.patch
      include/my_global.h:
        Import patch wl1012.patch
      mysql-test/Makefile.am:
        Import patch wl1012.patch
      mysql-test/mysql-test-run.pl:
        Import patch wl1012.patch
      mysql-test/mysql-test-run.sh:
        Import patch wl1012.patch
      mysql-test/r/date_formats.result:
        Import patch wl1012.patch
      mysql-test/r/flush_block_commit.result:
        Import patch wl1012.patch
      mysql-test/r/innodb.result:
        Import patch wl1012.patch
      mysql-test/r/rpl000017.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_change_master.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_commit_after_flush.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_create_database.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_do_grant.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_loaddata.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_log_pos.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_multi_delete.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_multi_update.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_openssl.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_replicate_do.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_rotate_logs.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_server_id1.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_server_id2.result:
        Import patch wl1012.patch
      mysql-test/r/rpl_temporary.result:
        Import patch wl1012.patch
      mysql-test/r/user_var-binlog.result:
        Import patch wl1012.patch
      mysql-test/t/create_select_tmp.test:
        Import patch wl1012.patch
      mysql-test/t/date_formats.test:
        Import patch wl1012.patch
      mysql-test/t/disabled.def:
        Import patch wl1012.patch
      mysql-test/t/innodb.test:
        Import patch wl1012.patch
      mysql-test/t/mysqlbinlog.test:
        Import patch wl1012.patch
      mysql-test/t/mysqlbinlog2.test:
        Import patch wl1012.patch
      mysql-test/t/rpl000002.test:
        Import patch wl1012.patch
      mysql-test/t/rpl000006.test:
        Import patch wl1012.patch
      mysql-test/t/rpl000013.test:
        Import patch wl1012.patch
      mysql-test/t/rpl000017.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_auto_increment.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_change_master.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_commit_after_flush.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_create_database.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_do_grant.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_drop.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_empty_master_crash.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_failed_optimize.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_heap.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_insert_id.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_insert_ignore.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_loaddata.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_log_pos.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_multi_delete.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_multi_update.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_multi_update2.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_multi_update3.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_openssl.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_redirect.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_relayrotate.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_replicate_do.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_rotate_logs.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_server_id1.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_sp_effects.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_temporary.test:
        Import patch wl1012.patch
      mysql-test/t/rpl_trigger.test:
        Import patch wl1012.patch
      mysql-test/t/sp.test:
        Import patch wl1012.patch
      mysql-test/t/user_var-binlog.test:
        Import patch wl1012.patch
      mysys/Makefile.am:
        Import patch wl1012.patch
      mysys/base64.c:
        Import patch wl1012.patch
      sql/Makefile.am:
        Import patch wl1012.patch
      sql/ha_innodb.cc:
        Import patch wl1012.patch
      sql/ha_innodb.h:
        Import patch wl1012.patch
      sql/ha_partition.cc:
        Import patch wl1012.patch
      sql/handler.cc:
        Import patch wl1012.patch
      sql/handler.h:
        Import patch wl1012.patch
      sql/item_sum.cc:
        Import patch wl1012.patch
      sql/log.cc:
        Import patch wl1012.patch
      sql/log_event.cc:
        Import patch wl1012.patch
      sql/log_event.h:
        Import patch wl1012.patch
      sql/mysql_priv.h:
        Import patch wl1012.patch
      sql/mysqld.cc:
        Import patch wl1012.patch
      sql/rpl_filter.h:
        Import patch wl1012.patch
      sql/set_var.cc:
        Import patch wl1012.patch
      sql/share/errmsg.txt:
        Import patch wl1012.patch
      sql/slave.cc:
        Import patch wl1012.patch
      sql/slave.h:
        Import patch wl1012.patch
      sql/sp.cc:
        Import patch wl1012.patch
      sql/sp_head.cc:
        Import patch wl1012.patch
      sql/sql_acl.cc:
        Import patch wl1012.patch
      sql/sql_base.cc:
        Import patch wl1012.patch
      sql/sql_class.cc:
        Import patch wl1012.patch
      sql/sql_class.h:
        Import patch wl1012.patch
      sql/sql_delete.cc:
        Import patch wl1012.patch
      sql/sql_insert.cc:
        Import patch wl1012.patch
      sql/sql_lex.h:
        Import patch wl1012.patch
      sql/sql_list.h:
        Import patch wl1012.patch
      sql/sql_load.cc:
        Import patch wl1012.patch
      sql/sql_parse.cc:
        Import patch wl1012.patch
      sql/sql_plugin.cc:
        Import patch wl1012.patch
      sql/sql_rename.cc:
        Import patch wl1012.patch
      sql/sql_repl.h:
        Import patch wl1012.patch
      sql/sql_select.cc:
        Import patch wl1012.patch
      sql/sql_show.cc:
        Import patch wl1012.patch
      sql/sql_table.cc:
        Import patch wl1012.patch
      sql/sql_udf.cc:
        Import patch wl1012.patch
      sql/sql_union.cc:
        Import patch wl1012.patch
      sql/sql_update.cc:
        Import patch wl1012.patch
      sql/sql_yacc.yy:
        Import patch wl1012.patch
      sql/table.cc:
        Import patch wl1012.patch
      sql/table.h:
        Import patch wl1012.patch
      storage/innobase/include/lock0lock.h:
        Import patch wl1012.patch
      storage/innobase/include/row0mysql.h:
        Import patch wl1012.patch
      storage/innobase/include/row0vers.h:
        Import patch wl1012.patch
      storage/innobase/lock/lock0lock.c:
        Import patch wl1012.patch
      storage/innobase/row/row0mysql.c:
        Import patch wl1012.patch
      storage/innobase/row/row0sel.c:
        Import patch wl1012.patch
      storage/innobase/row/row0vers.c:
        Import patch wl1012.patch
      00d4af11
  14. 28 Jul, 2005 1 commit
    • unknown's avatar
      Added end marker for tests to make future merges easier · 0062e643
      unknown authored
      mysql-test/t/alias.test:
        Added end marker for test to make future merges easier
      mysql-test/t/alter_table.test:
        Added end marker for test to make future merges easier
      mysql-test/t/analyse.test:
        Added end marker for test to make future merges easier
      mysql-test/t/analyze.test:
        Added end marker for test to make future merges easier
        Fixed length of comment lines
      mysql-test/t/ansi.test:
        Added end marker for test to make future merges easier
      mysql-test/t/archive.test:
        Added end marker for test to make future merges easier
      mysql-test/t/auto_increment.test:
        Added end marker for test to make future merges easier
      mysql-test/t/backup.test:
        Added end marker for test to make future merges easier
      mysql-test/t/bdb-alter-table-1.test:
        Added end marker for test to make future merges easier
      mysql-test/t/bdb-alter-table-2.test:
        Added end marker for test to make future merges easier
      mysql-test/t/bdb-crash.test:
        Added end marker for test to make future merges easier
      mysql-test/t/bdb-deadlock.test:
        Added end marker for test to make future merges easier
      mysql-test/t/bdb-deadlock.tminus:
        Added end marker for test to make future merges easier
      mysql-test/t/bdb.test:
        Added end marker for test to make future merges easier
      mysql-test/t/bdb_cache.test:
        Added end marker for test to make future merges easier
      mysql-test/t/bench_count_distinct.test:
        Added end marker for test to make future merges easier
      mysql-test/t/bigint.test:
        Added end marker for test to make future merges easier
      mysql-test/t/binary.test:
        Added end marker for test to make future merges easier
      mysql-test/t/blackhole.test:
        Added end marker for test to make future merges easier
      mysql-test/t/bool.test:
        Added end marker for test to make future merges easier
      mysql-test/t/bulk_replace.test:
        Added end marker for test to make future merges easier
      mysql-test/t/case.test:
        Added end marker for test to make future merges easier
      mysql-test/t/cast.test:
        Added end marker for test to make future merges easier
      mysql-test/t/check.test:
        Added end marker for test to make future merges easier
      mysql-test/t/comments.test:
        Added end marker for test to make future merges easier
      mysql-test/t/compare.test:
        Added end marker for test to make future merges easier
      mysql-test/t/connect.test:
        Added end marker for test to make future merges easier
      mysql-test/t/consistent_snapshot.test:
        Added end marker for test to make future merges easier
      mysql-test/t/constraints.test:
        Added end marker for test to make future merges easier
      mysql-test/t/count_distinct.test:
        Added end marker for test to make future merges easier
      mysql-test/t/count_distinct2.test:
        Added end marker for test to make future merges easier
      mysql-test/t/count_distinct3.test:
        Added end marker for test to make future merges easier
      mysql-test/t/create.test:
        Added end marker for test to make future merges easier
      mysql-test/t/create_select_tmp.test:
        Added end marker for test to make future merges easier
      mysql-test/t/csv.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ctype_big5.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ctype_collate.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ctype_cp1250_ch.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ctype_cp1251.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ctype_cp932.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ctype_create.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ctype_gbk.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ctype_latin1.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ctype_latin1_de.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ctype_latin2.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ctype_many.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ctype_mb.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ctype_recoding.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ctype_sjis.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ctype_tis620.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ctype_uca.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ctype_ucs.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ctype_ucs_binlog.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ctype_ujis.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ctype_utf8.test:
        Added end marker for test to make future merges easier
      mysql-test/t/date_formats.test:
        Added end marker for test to make future merges easier
      mysql-test/t/delayed.test:
        Added end marker for test to make future merges easier
      mysql-test/t/delete.test:
        Added end marker for test to make future merges easier
      mysql-test/t/derived.test:
        Added end marker for test to make future merges easier
      mysql-test/t/dirty_close.test:
        Added end marker for test to make future merges easier
      mysql-test/t/distinct.test:
        Added end marker for test to make future merges easier
      mysql-test/t/drop.test:
        Added end marker for test to make future merges easier
      mysql-test/t/drop_temp_table.test:
        Added end marker for test to make future merges easier
      mysql-test/t/empty_table.test:
        Added end marker for test to make future merges easier
      mysql-test/t/endspace.test:
        Added end marker for test to make future merges easier
      mysql-test/t/errors.test:
        Added end marker for test to make future merges easier
      mysql-test/t/exampledb.test:
        Added end marker for test to make future merges easier
      mysql-test/t/explain.test:
        Added end marker for test to make future merges easier
      mysql-test/t/flush.test:
        Added end marker for test to make future merges easier
      mysql-test/t/flush_block_commit.test:
        Added end marker for test to make future merges easier
      mysql-test/t/flush_table.test:
        Added end marker for test to make future merges easier
      mysql-test/t/foreign_key.test:
        Added end marker for test to make future merges easier
      mysql-test/t/fulltext.test:
        Added end marker for test to make future merges easier
      mysql-test/t/fulltext2.test:
        Added end marker for test to make future merges easier
      mysql-test/t/fulltext_cache.test:
        Added end marker for test to make future merges easier
      mysql-test/t/fulltext_distinct.test:
        Added end marker for test to make future merges easier
      mysql-test/t/fulltext_left_join.test:
        Added end marker for test to make future merges easier
      mysql-test/t/fulltext_multi.test:
        Added end marker for test to make future merges easier
      mysql-test/t/fulltext_order_by.test:
        Added end marker for test to make future merges easier
      mysql-test/t/fulltext_update.test:
        Added end marker for test to make future merges easier
      mysql-test/t/fulltext_var.test:
        Added end marker for test to make future merges easier
      mysql-test/t/func_compress.test:
        Added end marker for test to make future merges easier
      mysql-test/t/func_concat.test:
        Added end marker for test to make future merges easier
      mysql-test/t/func_crypt.test:
        Added end marker for test to make future merges easier
      mysql-test/t/func_date_add.test:
        Added end marker for test to make future merges easier
      mysql-test/t/func_default.test:
        Added end marker for test to make future merges easier
      mysql-test/t/func_des_encrypt.test:
        Added end marker for test to make future merges easier
      mysql-test/t/func_encrypt.test:
        Added end marker for test to make future merges easier
      mysql-test/t/func_encrypt_nossl.test:
        Added end marker for test to make future merges easier
      mysql-test/t/func_equal.test:
        Added end marker for test to make future merges easier
      mysql-test/t/func_gconcat.test:
        Added end marker for test to make future merges easier
      mysql-test/t/func_group.test:
        Added end marker for test to make future merges easier
      mysql-test/t/func_if.test:
        Added end marker for test to make future merges easier
      mysql-test/t/func_in.test:
        Added end marker for test to make future merges easier
      mysql-test/t/func_isnull.test:
        Added end marker for test to make future merges easier
      mysql-test/t/func_like.test:
        Added end marker for test to make future merges easier
      mysql-test/t/func_math.test:
        Added end marker for test to make future merges easier
      mysql-test/t/func_misc.test:
        Added end marker for test to make future merges easier
      mysql-test/t/func_op.test:
        Added end marker for test to make future merges easier
      mysql-test/t/func_regexp.test:
        Added end marker for test to make future merges easier
      mysql-test/t/func_sapdb.test:
        Added end marker for test to make future merges easier
      mysql-test/t/func_set.test:
        Added end marker for test to make future merges easier
      mysql-test/t/func_str.test:
        Added end marker for test to make future merges easier
      mysql-test/t/func_system.test:
        Added end marker for test to make future merges easier
      mysql-test/t/func_test.test:
        Added end marker for test to make future merges easier
      mysql-test/t/func_time.test:
        Added end marker for test to make future merges easier
      mysql-test/t/func_timestamp.test:
        Added end marker for test to make future merges easier
      mysql-test/t/gcc296.test:
        Added end marker for test to make future merges easier
      mysql-test/t/gis-rtree.test:
        Added end marker for test to make future merges easier
      mysql-test/t/gis.test:
        Added end marker for test to make future merges easier
      mysql-test/t/grant.test:
        Added end marker for test to make future merges easier
      mysql-test/t/grant2.test:
        Added end marker for test to make future merges easier
      mysql-test/t/grant_cache.test:
        Added end marker for test to make future merges easier
      mysql-test/t/group_by.test:
        Added end marker for test to make future merges easier
      mysql-test/t/handler.test:
        Added end marker for test to make future merges easier
      mysql-test/t/having.test:
        Added end marker for test to make future merges easier
      mysql-test/t/heap.test:
        Added end marker for test to make future merges easier
      mysql-test/t/heap_auto_increment.test:
        Added end marker for test to make future merges easier
      mysql-test/t/heap_btree.test:
        Added end marker for test to make future merges easier
      mysql-test/t/heap_hash.test:
        Added end marker for test to make future merges easier
      mysql-test/t/help.test:
        Added end marker for test to make future merges easier
      mysql-test/t/init_connect.test:
        Added end marker for test to make future merges easier
      mysql-test/t/init_file.test:
        Added end marker for test to make future merges easier
      mysql-test/t/innodb-deadlock.test:
        Added end marker for test to make future merges easier
      mysql-test/t/innodb-lock.test:
        Added end marker for test to make future merges easier
      mysql-test/t/innodb-replace.test:
        Added end marker for test to make future merges easier
      mysql-test/t/innodb.test:
        Added end marker for test to make future merges easier
      mysql-test/t/innodb_cache.test:
        Added end marker for test to make future merges easier
      mysql-test/t/innodb_handler.test:
        Added end marker for test to make future merges easier
      mysql-test/t/insert.test:
        Added end marker for test to make future merges easier
      mysql-test/t/insert_select-binlog.test:
        Added end marker for test to make future merges easier
      mysql-test/t/insert_select.test:
        Added end marker for test to make future merges easier
      mysql-test/t/insert_update.test:
        Added end marker for test to make future merges easier
      mysql-test/t/isam.test:
        Added end marker for test to make future merges easier
      mysql-test/t/join.test:
        Added end marker for test to make future merges easier
      mysql-test/t/join_crash.test:
        Added end marker for test to make future merges easier
      mysql-test/t/join_outer.test:
        Added end marker for test to make future merges easier
      mysql-test/t/key.test:
        Added end marker for test to make future merges easier
      mysql-test/t/key_cache.test:
        Added end marker for test to make future merges easier
      mysql-test/t/key_diff.test:
        Added end marker for test to make future merges easier
      mysql-test/t/key_primary.test:
        Added end marker for test to make future merges easier
      mysql-test/t/keywords.test:
        Added end marker for test to make future merges easier
      mysql-test/t/kill.test:
        Added end marker for test to make future merges easier
      mysql-test/t/limit.test:
        Added end marker for test to make future merges easier
      mysql-test/t/loaddata.test:
        Added end marker for test to make future merges easier
      mysql-test/t/lock.test:
        Added end marker for test to make future merges easier
      mysql-test/t/lock_multi.test:
        Added end marker for test to make future merges easier
      mysql-test/t/lock_tables_lost_commit.test:
        Added end marker for test to make future merges easier
      mysql-test/t/lowercase_table.test:
        Added end marker for test to make future merges easier
      mysql-test/t/lowercase_table2.test:
        Added end marker for test to make future merges easier
      mysql-test/t/lowercase_table3.test:
        Added end marker for test to make future merges easier
      mysql-test/t/lowercase_table_grant.test:
        Added end marker for test to make future merges easier
      mysql-test/t/lowercase_table_qcache.test:
        Added end marker for test to make future merges easier
      mysql-test/t/merge.test:
        Added end marker for test to make future merges easier
      mysql-test/t/metadata.test:
        Added end marker for test to make future merges easier
      mysql-test/t/mix_innodb_myisam_binlog.test:
        Added end marker for test to make future merges easier
      mysql-test/t/multi_statement.test:
        Added end marker for test to make future merges easier
      mysql-test/t/multi_update.test:
        Added end marker for test to make future merges easier
      mysql-test/t/myisam-blob.test:
        Added end marker for test to make future merges easier
      mysql-test/t/myisam.test:
        Added end marker for test to make future merges easier
      mysql-test/t/mysql_client_test.test:
        Added end marker for test to make future merges easier
      mysql-test/t/mysql_protocols.test:
        Added end marker for test to make future merges easier
      mysql-test/t/mysqlbinlog.test:
        Added end marker for test to make future merges easier
      mysql-test/t/mysqlbinlog2.test:
        Added end marker for test to make future merges easier
      mysql-test/t/mysqldump.test:
        Added end marker for test to make future merges easier
      mysql-test/t/mysqltest.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ndb_alter_table.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ndb_autodiscover.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ndb_autodiscover2.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ndb_basic.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ndb_blob.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ndb_cache.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ndb_charset.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ndb_config.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ndb_database.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ndb_grant.later:
        Added end marker for test to make future merges easier
      mysql-test/t/ndb_index.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ndb_index_ordered.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ndb_index_unique.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ndb_insert.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ndb_limit.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ndb_lock.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ndb_minmax.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ndb_multi.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ndb_replace.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ndb_restore.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ndb_subquery.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ndb_transaction.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ndb_truncate.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ndb_types.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ndb_update.test:
        Added end marker for test to make future merges easier
      mysql-test/t/negation_elimination.test:
        Added end marker for test to make future merges easier
      mysql-test/t/not_embedded_server.test:
        Added end marker for test to make future merges easier
      mysql-test/t/null.test:
        Added end marker for test to make future merges easier
      mysql-test/t/null_key.test:
        Added end marker for test to make future merges easier
      mysql-test/t/odbc.test:
        Added end marker for test to make future merges easier
      mysql-test/t/olap.test:
        Added end marker for test to make future merges easier
      mysql-test/t/openssl_1.test:
        Added end marker for test to make future merges easier
      mysql-test/t/order_by.test:
        Added end marker for test to make future merges easier
      mysql-test/t/order_fill_sortbuf.test:
        Added end marker for test to make future merges easier
      mysql-test/t/outfile.test:
        Added end marker for test to make future merges easier
      mysql-test/t/overflow.test:
        Added end marker for test to make future merges easier
      mysql-test/t/packet.test:
        Added end marker for test to make future merges easier
      mysql-test/t/preload.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ps.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ps_10nestset.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ps_11bugs.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ps_1general.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ps_2myisam.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ps_3innodb.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ps_4heap.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ps_5merge.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ps_6bdb.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ps_7ndb.test:
        Added end marker for test to make future merges easier
      mysql-test/t/ps_grant.test:
        Added end marker for test to make future merges easier
      mysql-test/t/query_cache.test:
        Added end marker for test to make future merges easier
      mysql-test/t/query_cache_merge.test:
        Added end marker for test to make future merges easier
      mysql-test/t/raid.test:
        Added end marker for test to make future merges easier
      mysql-test/t/range.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rename.test:
        Added end marker for test to make future merges easier
      mysql-test/t/repair.test:
        Added end marker for test to make future merges easier
      mysql-test/t/replace.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rollback.test:
        Added end marker for test to make future merges easier
      mysql-test/t/row.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl000001.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl000002.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl000004.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl000005.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl000006.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl000008.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl000009.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl000010.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl000011.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl000012.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl000013.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl000015.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl000017.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl000018.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_EE_error.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_alter.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_chain_temp_table.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_change_master.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_charset.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_commit_after_flush.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_create_database.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_ddl.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_deadlock.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_delete_all.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_do_grant.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_drop.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_drop_temp.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_empty_master_crash.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_error_ignored_table.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_failed_optimize.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_failsafe.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_flush_log_loop.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_flush_tables.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_free_items.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_get_lock.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_heap.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_ignore_grant.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_init_slave.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_innodb.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_insert_id.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_insert_ignore.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_loaddata.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_loaddata_rule_m.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_loaddata_rule_s.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_loaddatalocal.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_log.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_log_pos.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_many_optimize.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_master_pos_wait.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_max_relay_size.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_misc_functions.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_multi_delete.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_multi_delete2.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_multi_query.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_multi_update.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_multi_update2.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_multi_update3.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_mystery22.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_openssl.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_optimize.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_ps.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_redirect.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_relayrotate.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_relayspace.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_replicate_do.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_reset_slave.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_rewrite_db.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_rotate_logs.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_server_id1.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_server_id2.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_set_charset.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_skip_error.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_sporadic_master.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_start_stop_slave.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_temporary.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_timezone.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_trunc_binlog.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_until.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_user_variables.test:
        Added end marker for test to make future merges easier
      mysql-test/t/rpl_variables.test:
        Added end marker for test to make future merges easier
      mysql-test/t/select.test:
        Added end marker for test to make future merges easier
      mysql-test/t/select_found.test:
        Added end marker for test to make future merges easier
      mysql-test/t/select_safe.test:
        Added end marker for test to make future merges easier
      mysql-test/t/show_check.test:
        Added end marker for test to make future merges easier
      mysql-test/t/skip_name_resolve.test:
        Added end marker for test to make future merges easier
      mysql-test/t/sql_mode.test:
        Added end marker for test to make future merges easier
      mysql-test/t/status.test:
        Added end marker for test to make future merges easier
      mysql-test/t/subselect.test:
        Added end marker for test to make future merges easier
      mysql-test/t/subselect2.test:
        Added end marker for test to make future merges easier
      mysql-test/t/subselect_gis.test:
        Added end marker for test to make future merges easier
      mysql-test/t/subselect_innodb.test:
        Added end marker for test to make future merges easier
      mysql-test/t/symlink.test:
        Added end marker for test to make future merges easier
      mysql-test/t/synchronization.test:
        Added end marker for test to make future merges easier
      mysql-test/t/system_mysql_db.test:
        Added end marker for test to make future merges easier
      mysql-test/t/system_mysql_db_fix.test:
        Added end marker for test to make future merges easier
      mysql-test/t/system_mysql_db_refs.test:
        Added end marker for test to make future merges easier
      mysql-test/t/tablelock.test:
        Added end marker for test to make future merges easier
      mysql-test/t/temp_table.test:
        Added end marker for test to make future merges easier
      mysql-test/t/timezone.test:
        Added end marker for test to make future merges easier
      mysql-test/t/timezone2.test:
        Added end marker for test to make future merges easier
      mysql-test/t/timezone3.test:
        Added end marker for test to make future merges easier
      mysql-test/t/timezone_grant.test:
        Added end marker for test to make future merges easier
      mysql-test/t/truncate.test:
        Added end marker for test to make future merges easier
      mysql-test/t/type_blob.test:
        Added end marker for test to make future merges easier
      mysql-test/t/type_date.test:
        Added end marker for test to make future merges easier
      mysql-test/t/type_datetime.test:
        Added end marker for test to make future merges easier
      mysql-test/t/type_decimal.test:
        Added end marker for test to make future merges easier
      mysql-test/t/type_enum.test:
        Added end marker for test to make future merges easier
      mysql-test/t/type_float.test:
        Added end marker for test to make future merges easier
      mysql-test/t/type_nchar.test:
        Added end marker for test to make future merges easier
      mysql-test/t/type_ranges.test:
        Added end marker for test to make future merges easier
      mysql-test/t/type_set.test:
        Added end marker for test to make future merges easier
      mysql-test/t/type_time.test:
        Added end marker for test to make future merges easier
      mysql-test/t/type_timestamp.test:
        Added end marker for test to make future merges easier
      mysql-test/t/type_uint.test:
        Added end marker for test to make future merges easier
      mysql-test/t/type_year.test:
        Added end marker for test to make future merges easier
      mysql-test/t/union.test:
        Added end marker for test to make future merges easier
      mysql-test/t/update.test:
        Added end marker for test to make future merges easier
      mysql-test/t/user_var-binlog.test:
        Added end marker for test to make future merges easier
      mysql-test/t/user_var.test:
        Added end marker for test to make future merges easier
      mysql-test/t/varbinary.test:
        Added end marker for test to make future merges easier
      mysql-test/t/variables.test:
        Added end marker for test to make future merges easier
      mysql-test/t/warnings.test:
        Added end marker for test to make future merges easier
      0062e643
  15. 30 Mar, 2005 1 commit
    • unknown's avatar
      Eliminate most of the remaining hardcoded list of tests to skip · 529f2937
      unknown authored
      by adding check for embedded server within tests and splitting some
      tests into multiple test files.
      
      
      mysql-test/mysql-test-run.sh:
        Remove most of hardcoded list of tests to skip
      mysql-test/r/ps_1general.result:
        Update results
      mysql-test/r/timezone2.result:
        Update results
      mysql-test/r/user_var.result:
        Update results
      mysql-test/r/variables.result:
        Update results
      mysql-test/t/mix_innodb_myisam_binlog.test:
        Disable test with embedded server
      mysql-test/t/mysql_protocols.test:
        Disable test with embedded server
      mysql-test/t/mysqlbinlog.test:
        Disable test with embedded server
      mysql-test/t/mysqlbinlog2.test:
        Disable test with embedded server
      mysql-test/t/mysqldump.test:
        Disable test with embedded server
      mysql-test/t/packet.test:
        Disable test with embedded server
      mysql-test/t/ps_1general.test:
        Move parts of test to new ps_grant
      mysql-test/t/rename.test:
        Disable test with embedded server
      mysql-test/t/show_check.test:
        Disable test with embedded server
      mysql-test/t/system_mysql_db_fix.test:
        Disable test with embedded server
      mysql-test/t/timezone2.test:
        Move part of test to timezone_grant
      mysql-test/t/user_var.test:
        Move part of test to new user_var-binlog
      mysql-test/t/variables.test:
        Move part of test to rpl_variables
      529f2937
  16. 25 Mar, 2005 1 commit
    • unknown's avatar
      WWe now store the catalog in Query_log_event in binlog WITHOUT its end zero. · 26303a09
      unknown authored
      This saves one byte per Query_log_event on disk compared to 5.0.[0..3]. Compatibility problems with 5.0.x where x<4
      are explained in the comments in log_event.cc. Putting back s/my_open(O_TRUNC)/(my_delete+my_create) change which had
      been wiped away by somebody doing a wrong 4.1->5.0 merge (which happened just
      before 5.0.3 :( ). Applying it to new events for LOAD DATA INFILE.
      If slave fails in Execute_load_query_log_event::exec_event(),
      don't delete the file (so that it's re-usable at next START SLAVE).
      And (youpi!) fix for BUG#3247 "a partially completed LOAD DATA INFILE is not
      executed at all on the slave" (storing an Execute_load_query_log_event
      to binlog, with its error code, instead of Delete_file_log_event).
      
      
      mysql-test/r/mix_innodb_myisam_binlog.result:
        we now use one less byte when storing the catalog in binlog so positions change
      mysql-test/r/rpl_change_master.result:
        we now use one less byte when storing the catalog in binlog so positions change
      mysql-test/r/rpl_deadlock.result:
        we now use one less byte when storing the catalog in binlog so positions change
      mysql-test/r/rpl_error_ignored_table.result:
        we now use one less byte when storing the catalog in binlog so positions change
      mysql-test/r/rpl_flush_log_loop.result:
        we now use one less byte when storing the catalog in binlog so positions change
      mysql-test/r/rpl_loaddata.result:
        we now use one less byte when storing the catalog in binlog so positions change.
        Plus testing replication of LOAD DATA INFILE if duplicate key and non-transactional table.
      mysql-test/r/rpl_log.result:
        we now use one less byte when storing the catalog in binlog so positions change
      mysql-test/r/rpl_max_relay_size.result:
        we now use one less byte when storing the catalog in binlog so positions change
      mysql-test/r/rpl_relayrotate.result:
        we now use one less byte when storing the catalog in binlog so positions change
      mysql-test/r/rpl_replicate_do.result:
        we now use one less byte when storing the catalog in binlog so positions change
      mysql-test/r/rpl_rotate_logs.result:
        we now use one less byte when storing the catalog in binlog so positions change
      mysql-test/r/rpl_until.result:
        we now use one less byte when storing the catalog in binlog so positions change
      mysql-test/t/mysqlbinlog.test:
        we now use one less byte when storing the catalog in binlog so positions change
      mysql-test/t/mysqlbinlog2.test:
        we now use one less byte when storing the catalog in binlog so positions change
      mysql-test/t/rpl_deadlock.test:
        we now use one less byte when storing the catalog in binlog so positions change
      mysql-test/t/rpl_loaddata.test:
        we now use one less byte when storing the catalog in binlog so positions change.
        Plus testing replication of LOAD DATA INFILE if duplicate key and non-transactional table.
      mysql-test/t/rpl_until.test:
        we now use one less byte when storing the catalog in binlog so positions change
      sql/log_event.cc:
        a) We now store the catalog in Query_log_event in binlog WITHOUT its end zero.
        This saves one byte per Query_log_event on disk. Compatibility problems with 5.0.x where x<4
        are explained in the comments in this file.
        b) putting back s/my_open(O_TRUNC)/(my_delete+my_create) change which had
        been wiped away by somebody doing a wrong 4.1->5.0 merge (which happened just
        before 5.0.3 :( ). Applying it to new events for LOAD DATA INFILE.
        c) if slave fails in Execute_load_query_log_event::exec_event(),
        don't delete the file (so that it's re-usable at next START SLAVE).
      sql/log_event.h:
        We now store the catalog in Query_log_event in binlog WITHOUT its end zero.
        This saves one byte per Query_log_event on disk. This new storage for
        the catalog is denoted by Q_CATALOG_NZ_CODE (couldn't re-use Q_CATALOG_CODE
        as 5.0.3 slaves of this 5.0.4 master would segfault because it would
        expect a 0 when there is none.
        Renaming get_open_mode() to get_create_or_append() (see log_event.cc)
      sql/sql_load.cc:
        Fix for BUG#3247: if LOAD DATA INFILE fails but has permanently updated a table
        (i.e. has deleted/added/modified some rows in a non-transactional table),
        we must write an Execute_load_query_log_event to binlog (with the error code,
        as this class beautifully inherits from Query_log_event, it can store
        the error code - thanks Dmitri) and not a Delete_file_log_event (we use
        to write a Delete_file_log_event: no update happened on slave, bug).
      26303a09
  17. 16 Mar, 2005 1 commit
    • unknown's avatar
      WL#874 "Extended LOAD DATA". · fc573786
      unknown authored
      Now one can use user variables as target for data loaded from file
      (besides table's columns). Also LOAD DATA got new SET-clause in which
      one can specify values for table columns as expressions.
      
      For example the following is possible:
      LOAD DATA INFILE 'words.dat' INTO TABLE t1 (a, @b) SET c = @b + 1;
      
      This patch also implements new way of replicating LOAD DATA.
      Now we do it similarly to other queries.
      We store LOAD DATA query in new Execute_load_query event
      (which is last in the sequence of events representing LOAD DATA).
      When we are executing this event we simply rewrite part of query which
      holds name of file (we use name of temporary file) and then execute it
      as usual query. In the beggining of this sequence we use Begin_load_query
      event which is almost identical to Append_file event
      
      
      client/mysqlbinlog.cc:
        Added support of two new binary log events Begin_load_query_log_event and
        Execute_load_query_log_Event which are used to replicate LOAD DATA INFILE.
      mysql-test/r/ctype_ucs.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results and made it more robust for future similar 
        changes.
      mysql-test/r/insert_select.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results and made it more robust for future similar 
        changes.
      mysql-test/r/loaddata.result:
        Added tests for new LOAD DATA features.
      mysql-test/r/mix_innodb_myisam_binlog.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results (don't dare to get rid from binlog positions
        completely since it seems that this test uses them).
      mysql-test/r/mysqlbinlog.result:
        New approach for binlogging of LOAD DATA statement. Now we store it as
        usual query and rewrite part in which file is specified when needed.
        So now mysqlbinlog output for LOAD DATA much more closer to its initial
        form. Updated test'd results accordingly.
      mysql-test/r/mysqldump.result:
        Made test more robust to other tests failures.
      mysql-test/r/rpl000015.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results accordingly.
      mysql-test/r/rpl_change_master.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results.
      mysql-test/r/rpl_charset.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results accordingly
      mysql-test/r/rpl_deadlock.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results accordingly
      mysql-test/r/rpl_error_ignored_table.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results and made it more robust for future similar 
        changes.
      mysql-test/r/rpl_flush_log_loop.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results accordingly.
      mysql-test/r/rpl_flush_tables.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results and made it more robust for future similar 
        changes.
      mysql-test/r/rpl_loaddata.result:
        New way of replicating LOAD DATA. Now we do it similarly to other
        queries. We store LOAD DATA query in new Execute_load_query event
        (which is last in the sequence of events representing LOAD DATA).
        When we are executing this event we simply rewrite part of query which
        holds name of file (we use name of temporary file) and then execute it
        as usual query. In the beggining of this sequence we use Begin_load_query
        event which is almost identical to Append_file event...
        
        Updated test's results wwith new binlog positions.
      mysql-test/r/rpl_loaddata_rule_m.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results and made it more robust for future similar 
        changes.
        Since now LOAD DATA is replicated much in the same way as usual query
        --binlog_do/ignore_db work for it inthe same way as for usual queries.
      mysql-test/r/rpl_loaddata_rule_s.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results accordingly.
      mysql-test/r/rpl_loaddatalocal.result:
        Added nice test for case when it is important that LOAD DATA LOCAL
        ignores duplicates.
      mysql-test/r/rpl_log.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results accordingly (don't dare to get rid from binlog 
        positions completely since it seems that this test uses them).
      mysql-test/r/rpl_log_pos.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results accordingly.
      mysql-test/r/rpl_max_relay_size.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results accordingly.
      mysql-test/r/rpl_multi_query.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results accordingly.
      mysql-test/r/rpl_relayrotate.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results accordingly.
      mysql-test/r/rpl_replicate_do.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results accordingly.
      mysql-test/r/rpl_reset_slave.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results accordingly.
      mysql-test/r/rpl_rotate_logs.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results accordingly.
      mysql-test/r/rpl_server_id1.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results accordingly.
      mysql-test/r/rpl_server_id2.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results accordingly.
      mysql-test/r/rpl_temporary.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results and made it more robust for future similar 
        changes.
      mysql-test/r/rpl_timezone.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results and made it more robust for future similar 
        changes.
      mysql-test/r/rpl_until.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results accordingly and tweaked test a bit to bring it
        back to good shape.
      mysql-test/r/rpl_user_variables.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results and made it more robust for future similar 
        changes.
      mysql-test/r/user_var.result:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test's results and made it more robust for future similar 
        changes.
      mysql-test/t/ctype_ucs.test:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test accordingly and made it more robust for future similar
        changes.
      mysql-test/t/insert_select.test:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test accordingly and made it more robust for future similar
        changes.
      mysql-test/t/loaddata.test:
        Added test cases for new LOAD DATA functionality.
      mysql-test/t/mix_innodb_myisam_binlog.test:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test accordingly.
      mysql-test/t/mysqlbinlog.test:
        New way of replicating LOAD DATA local. Now we do it similarly to other
        queries. We store LOAD DATA query in new Execute_load_query event
        (which is last in the sequence of events representing LOAD DATA).
        When we are executing this event we simply rewrite part of query which
        holds name of file (we use name of temporary file) and then execute it
        as usual query. In the beggining of this sequence we use Begin_load_query
        event which is almost identical to Append_file event...
        
        Thus we need new binlog positions for LOAD DATA events.
      mysql-test/t/mysqlbinlog2.test:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test accordingly.
      mysql-test/t/mysqldump.test:
        Made test more robust for failures of other tests.
      mysql-test/t/rpl_charset.test:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test accordingly.
      mysql-test/t/rpl_deadlock.test:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test accordingly.
      mysql-test/t/rpl_error_ignored_table.test:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test accordingly and made it more robust for future similar
        changes.
      mysql-test/t/rpl_flush_tables.test:
        Addition of two new types of binary log events shifted binlog positions.
        Made test more robust for future similar changes.
      mysql-test/t/rpl_loaddata.test:
        New way of replicating LOAD DATA. Now we do it similarly to other
        queries. We store LOAD DATA query in new Execute_load_query event
        (which is last in the sequence of events representing LOAD DATA).
        When we are executing this event we simply rewrite part of query which
        holds name of file (we use name of temporary file) and then execute it
        as usual query. In the beggining of this sequence we use Begin_load_query
        event which is almost identical to Append_file event...
        
        Apropritely updated comments in test.
      mysql-test/t/rpl_loaddata_rule_m.test:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test accordingly and made it more robust for future similar 
        changes.
        Since now LOAD DATA is replicated much in the same way as usual query
        --binlog_do/ignore_db work for it inthe same way as for usual queries.
      mysql-test/t/rpl_loaddata_rule_s.test:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test accordingly.
      mysql-test/t/rpl_loaddatalocal.test:
        Added nice test for case when it is important that LOAD DATA LOCAL
        ignores duplicates.
      mysql-test/t/rpl_log.test:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test accordingly (don't dare to get rid from binlog positions
        completely since it seems that this test uses them).
      mysql-test/t/rpl_log_pos.test:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test accordingly.
      mysql-test/t/rpl_multi_query.test:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test accordingly.
      mysql-test/t/rpl_temporary.test:
        Addition of two new types of binary log events shifted binlog positions.
        Made test more robust for future similar changes.
      mysql-test/t/rpl_timezone.test:
        Addition of two new types of binary log events shifted binlog positions.
        Made test more robust for future similar changes.
      mysql-test/t/rpl_until.test:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test accordingly and tweaked it a bit to bring it back to good
        shape.
      mysql-test/t/rpl_user_variables.test:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test accordingly and made it more robust for future similar
        changes.
      mysql-test/t/user_var.test:
        Addition of two new types of binary log events shifted binlog positions.
        Updated test accordingly and made it more robust for future similar
        changes.
      sql/item_func.cc:
        Added Item_user_var_as_out_param class that represents user variable
        which used as out parameter in LOAD DATA.
        
        Moved code from Item_func_set_user_var::update_hash() function to
        separate static function to be able to reuse it in this new class.
      sql/item_func.h:
        Added Item_user_var_as_out_param class that represents user variable
        which used as out parameter in LOAD DATA.
      sql/log_event.cc:
        New way of replicating LOAD DATA. Now we do it similarly to other
        queries. We store LOAD DATA query in new Execute_load_query event
        (which is last in the sequence of events representing LOAD DATA).
        When we are executing this event we simply rewrite part of query which
        holds name of file (we use name of temporary file) and then execute it
        as usual query. In the beggining of this sequence we use Begin_load_query
        event which is almost identical to Append_file event.
      sql/log_event.h:
        New way of replicating LOAD DATA. Now we do it similarly to other
        queries. We store LOAD DATA query in new Execute_load_query event
        (which is last in the sequence of events representing LOAD DATA).
        When we are executing this event we simply rewrite part of query which
        holds name of file (we use name of temporary file) and then execute it
        as usual query. In the beggining of this sequence we use Begin_load_query
        event which is almost identical to Append_file event.
      sql/mysql_priv.h:
        Now mysql_load() has two more arguments. They are needed to pass list of
        columns and corresponding expressions from new LOAD DATA's SET clause.
      sql/share/errmsg.txt:
        Added new error message which is used to forbid loading of data from
        fixed length rows to variables.
      sql/sql_lex.h:
        Added LEX::fname_start/fname_end members. 
        They are pointers to part of LOAD DATA statement which should be
        rewritten during replication (file name + little extra).
      sql/sql_load.cc:
        Added support for extended LOAD DATA. 
        Now one can use user variables as target for data loaded from file 
        (besides table's columns). Also LOAD DATA got new SET-clause in which
        one can specify values for table columns as expressions.
        
        Updated mysql_load()/read_fixed_length()/read_sep_field() to support
        this functionality (now they can read data from file to both columns and
        variables and assign do calculations and assignments specified in SET
        clause).
        
        We also use new approach for LOAD DATA binlogging/replication.
      sql/sql_parse.cc:
        mysql_execute_command():
          Since now we have SET clause in LOAD DATA we should also check
          permissions for tables used in its expressions. Also mysql_load()
          has two more arguments to pass information about this clause.
      sql/sql_repl.cc:
        New way of replicating LOAD DATA. Now we do it similarly to other
        queries. We store LOAD DATA query in new Execute_load_query event
        (which is last in the sequence of events representing LOAD DATA).
        When we are executing this event we simply rewrite part of query which
        holds name of file (we use name of temporary file) and then execute it
        as usual query. In the beggining of this sequence we use Begin_load_query
        event which is almost identical to Append_file event.
      sql/sql_repl.h:
        struct st_load_file_info:
          Removed memebers which are no longer needed for LOAD DATA binnlogging.
      sql/sql_yacc.yy:
        Added support for extended LOAD DATA syntax. Now one can use
        user variables as target for data loaded from file (besides table's 
        columns). Also LOAD DATA got new SET-clause in which one can specify
        values for table columns as expressions.
        
        For example the following is possible:
        LOAD DATA INFILE 'words.dat' INTO TABLE t1 (a, @b) SET c = @b + 1;
        
        Also now we save pointers to the beginning and to the end of part of 
        LOAD DATA statement which should be rewritten during replication.
      fc573786
  18. 16 Jan, 2005 1 commit
    • unknown's avatar
      XA (not completely polished out yet) · 63120ffe
      unknown authored
      include/my_pthread.h:
        cleanup. don't use gcc extensions
      innobase/include/trx0sys.ic:
        Jan's fix for innobase_xa_prepare
      innobase/read/read0read.c:
        Jan's fix for innobase_xa_prepare
      innobase/trx/trx0trx.c:
        Jan's fix for innobase_xa_prepare
      mysql-test/include/varchar.inc:
        test fix
      mysql-test/r/ctype_ucs.result:
        new log event - all binlog positions are changed :(
      mysql-test/r/drop_temp_table.result:
        new log event - all binlog positions are changed :(
      mysql-test/r/insert_select.result:
        new log event - all binlog positions are changed :(
      mysql-test/r/mix_innodb_myisam_binlog.result:
        new log event - all binlog positions are changed :(
      mysql-test/r/myisam.result:
        test fix
      mysql-test/r/rpl000015.result:
        new log event - all binlog positions are changed :(
      mysql-test/r/rpl_change_master.result:
        new log event - all binlog positions are changed :(
      mysql-test/r/rpl_charset.result:
        new log event - all binlog positions are changed :(
      mysql-test/r/rpl_error_ignored_table.result:
        new log event - all binlog positions are changed :(
      mysql-test/r/rpl_flush_log_loop.result:
        new log event - all binlog positions are changed :(
      mysql-test/r/rpl_flush_tables.result:
        new log event - all binlog positions are changed :(
      mysql-test/r/rpl_loaddata.result:
        new log event - all binlog positions are changed :(
      mysql-test/r/rpl_loaddata_rule_m.result:
        new log event - all binlog positions are changed :(
      mysql-test/r/rpl_loaddata_rule_s.result:
        new log event - all binlog positions are changed :(
      mysql-test/r/rpl_log.result:
        new log event - all binlog positions are changed :(
      mysql-test/r/rpl_log_pos.result:
        new log event - all binlog positions are changed :(
      mysql-test/r/rpl_max_relay_size.result:
        new log event - all binlog positions are changed :(
      mysql-test/r/rpl_relayrotate.result:
        new log event - all binlog positions are changed :(
      mysql-test/r/rpl_replicate_do.result:
        new log event - all binlog positions are changed :(
      mysql-test/r/rpl_reset_slave.result:
        new log event - all binlog positions are changed :(
      mysql-test/r/rpl_rotate_logs.result:
        new log event - all binlog positions are changed :(
      mysql-test/r/rpl_server_id1.result:
        new log event - all binlog positions are changed :(
      mysql-test/r/rpl_server_id2.result:
        new log event - all binlog positions are changed :(
      mysql-test/r/rpl_temporary.result:
        new log event - all binlog positions are changed :(
      mysql-test/r/rpl_timezone.result:
        new log event - all binlog positions are changed :(
      mysql-test/r/rpl_until.result:
        new log event - all binlog positions are changed :(
      mysql-test/r/rpl_user_variables.result:
        new log event - all binlog positions are changed :(
      mysql-test/r/user_var.result:
        new log event - all binlog positions are changed :(
      mysql-test/t/ctype_ucs.test:
        new log event - all binlog positions are changed :(
      mysql-test/t/mix_innodb_myisam_binlog.test:
        new log event - all binlog positions are changed :(
      mysql-test/t/mysqlbinlog.test:
        new log event - all binlog positions are changed :(
      mysql-test/t/mysqlbinlog2.test:
        new log event - all binlog positions are changed :(
      mysql-test/t/rpl_charset.test:
        new log event - all binlog positions are changed :(
      mysql-test/t/rpl_error_ignored_table.test:
        new log event - all binlog positions are changed :(
      mysql-test/t/rpl_loaddata_rule_m.test:
        new log event - all binlog positions are changed :(
      mysql-test/t/rpl_loaddata_rule_s.test:
        new log event - all binlog positions are changed :(
      mysql-test/t/rpl_log.test:
        new log event - all binlog positions are changed :(
      mysql-test/t/rpl_log_pos.test:
        new log event - all binlog positions are changed :(
      mysql-test/t/rpl_user_variables.test:
        new log event - all binlog positions are changed :(
      mysql-test/t/user_var.test:
        new log event - all binlog positions are changed :(
      mysys/hash.c:
        typo fixed
      sql/ha_berkeley.cc:
        handlerton framework
      sql/ha_berkeley.h:
        handlerton framework
      sql/ha_innodb.cc:
        handlerton framework
      sql/ha_innodb.h:
        handlerton framework
      sql/handler.cc:
        new transaction handling, handlerton framework, two-phase commit, XA support
      sql/handler.h:
        new transaction handling, handlerton framework, two-phase commit, XA support
      sql/lex.h:
        XA commands
      sql/log.cc:
        new transaction handling, handlerton framework, two-phase commit,
        XA support, tc-logging, TC_LOG_MMAP class
      sql/log_event.cc:
        Xid_log_event
      sql/log_event.h:
        Xid_log_event, LOG_EVENT_BINLOG_CLOSED_F flag
      sql/mysql_priv.h:
        wrapper for query_id++
      sql/mysqld.cc:
        new command-line options --log-tc, --log-tc-size, --tc-heuristic-recover,
        new status variables Tc_log_page_size, Tc_log_max_pages_used, Tc_log_page_waits.
        init/stop tc logging
      sql/set_var.h:
        warning fixed
      sql/share/errmsg.txt:
        XA error messages
      sql/sp_head.cc:
        s/query_id++/next_query_id()/
      sql/sql_base.cc:
        typo fixed. new transaction handling.
      sql/sql_class.cc:
        cleanup of THD.transaction
      sql/sql_class.h:
        TC_LOG classes, new status variables, new savepoint handling, XA support
      sql/sql_insert.cc:
        comments
      sql/sql_lex.cc:
        s/found_colon/found_semicolon/
      sql/sql_lex.h:
        SQLCOM_XA_xxx, XA related changes in Lex
      sql/sql_parse.cc:
        cleanup, XA commands, new savepoint handling
      sql/sql_repl.cc:
        two functions moved to log.cc
      sql/sql_repl.h:
        two functions moved to log.cc
      sql/sql_trigger.cc:
        s/lex.name_and_length/lex.ident/
      sql/sql_yacc.yy:
        XA commands, cleanup
      63120ffe
  19. 09 Sep, 2004 1 commit
    • unknown's avatar
      After merge fixes of merge with 4.1 that included the new arena code. · 74e8c6af
      unknown authored
      Fixed (together with Guilhem) bugs in mysqlbinlog regarding --offset
      Prefix addresses with 0x for easier comparisons of debug logs
      Fixed problem where MySQL choosed index-read even if there would be a much better range on the same index
      This fix changed some 'index' queries to 'range' queries in the test suite
      Don't create 'dummy' WHERE clause for trivial WHERE clauses where we can remove the WHERE clause.
      This fix removed of a lot of 'Using where' notes in the test suite.
      Give NOTE instead of WARNING if table/function doesn't exists when using DROP IF EXISTS
      Give NOTE instead of WARNING for safe field-type conversions
      
      
      Makefile.am:
        Don't automaticly update files from bk
      client/mysqlbinlog.cc:
        Merge with 4.1 (+ apply bug fixes for --offset and --start-position)
      include/my_sys.h:
        Faster clear_alloc_root()
      mysql-test/r/bdb.result:
        Updated results after merge
      mysql-test/r/create.result:
        Updated results after merge
      mysql-test/r/func_group.result:
        Updated results after merge
      mysql-test/r/func_if.result:
        Updated results after merge
      mysql-test/r/heap_btree.result:
        Updated results after merge
      mysql-test/r/index_merge.result:
        Updated results after merge
      mysql-test/r/index_merge_ror.result:
        Updated results after merge
      mysql-test/r/innodb.result:
        Updated results after merge
      mysql-test/r/join_outer.result:
        Updated results after merge
      mysql-test/r/mysqlbinlog2.result:
        Updated results after merge
      mysql-test/r/negation_elimination.result:
        Updated results after merge
      mysql-test/r/null.result:
        Updated results after merge
        Added more tests
      mysql-test/r/null_key.result:
        Updated results after merge
        Added more tests
      mysql-test/r/order_by.result:
        Updated results after merge
      mysql-test/r/range.result:
        Updated results after merge
        Added more tests
      mysql-test/r/rpl_charset.result:
        Updated results after merge
      mysql-test/r/sp-error.result:
        Updated results after merge
      mysql-test/r/sp.result:
        Updated results after merge
        Added delete of some stored procedures in an attempt to be able to re-run test even if it aborts in the middle
      mysql-test/r/type_blob.result:
        Updated results after merge
        (Some warnings are now notes)
      mysql-test/r/user_var.result:
        Updated results after merge
        Added more tests
      mysql-test/r/variables.result:
        Updated results after merge
      mysql-test/r/view.result:
        Updated results after merge
      mysql-test/t/mysqlbinlog2.test:
        Updated tests to use new positions
      mysql-test/t/null.test:
        More tests
      mysql-test/t/null_key.test:
        More tests
      mysql-test/t/range.test:
        More tests
      mysql-test/t/rpl_charset.test:
        Avoid big diffs in the future if tests changes
      mysql-test/t/sp-error.test:
        Updated error numbers
      mysql-test/t/sp-security.test:
        Updated error numbers
      mysql-test/t/sp.test:
        Updated results after merge
        Added delete of some stored procedures in an attempt to be able to re-run test even if it aborts in the middle
      mysql-test/t/user_var.test:
        More tests
      mysql-test/t/view.test:
        Updated error numbers
      mysys/my_alloc.c:
        Write into debug log the address of the allocated area
      sql/ha_isam.cc:
        Prefix addresses with 0x for easier comparisons of debug logs
      sql/ha_myisam.cc:
        Prefix addresses with 0x for easier comparisons of debug logs
      sql/ha_ndbcluster.cc:
        Add missing enum to switch
      sql/handler.cc:
        remove compiler warning
      sql/item.cc:
        More debugging
        Simple cleanup
      sql/item.h:
        Move Item::cleanup() to item.cc
      sql/item_cmpfunc.cc:
        Fix arena code
      sql/item_subselect.cc:
        After merge fixes
      sql/item_subselect.h:
        After merge fixes
      sql/item_sum.cc:
        Updated comment
      sql/log_event.cc:
        Remove wrong test
      sql/mysql_priv.h:
        Indentation fixes
      sql/mysqld.cc:
        After merge fixes
        Added 0x to pointers in debug log
      sql/opt_range.cc:
        Fixed problem where MySQL choosed index-read even if there would be a much better range on the same index
        This fix changed some 'index' queries to 'range' queries in the test suite
      sql/set_var.cc:
        Indentation fixes
      sql/sp_head.cc:
        Set state to INITIALIZED to make SP work with new arena code
      sql/sql_base.cc:
        After merge fixes
      sql/sql_class.cc:
        More debugging
        Use clear_alloc_root() instead of init_alloc_root() as the former is faster
      sql/sql_class.h:
        New method 'only_prepare()'
      sql/sql_lex.cc:
        After merge fixes
      sql/sql_lex.h:
        After merge fixes
      sql/sql_parse.cc:
        Fix for timezone tables. (The old way to add timezone tables to global list in 'create_total_list' doesn't work anymore)
        Give NOTE instead of WARNING if table/function doesn't exists when using DROP IF EXISTS
      sql/sql_prepare.cc:
        After merge fixes
      sql/sql_select.cc:
        Don't create 'dummy' WHERE clause for trivial WHERE clauses where we can remove the WHERE clause.
        This fix removed of a lot of 'Using where' notes in the test suite
      sql/sql_table.cc:
        Give NOTE instead of WARNING if table/function doesn't exists when using DROP IF EXISTS
      sql/sql_union.cc:
        After merge fix
      sql/sql_view.cc:
        After merge fix
      sql/table.cc:
        After merge fix
      sql/tztime.cc:
        Update timezone table handling to use new table lists structure
      sql/tztime.h:
        Update timezone table handling to use new table lists structure
      sql/unireg.cc:
        Use 0x before pointers
      74e8c6af
  20. 29 Jul, 2004 1 commit
    • unknown's avatar
      WL#1580: --start-datetime, --stop-datetime, --start-position (alias for... · 5296a9bf
      unknown authored
      WL#1580: --start-datetime, --stop-datetime, --start-position (alias for --position) and --stop-position
      options for mysqlbinlog, with a test file.
      This enables user to say "recover my database to how it was this morning at 10:30"
      (mysqlbinlog "--stop-datetime=2003-07-29 10:30:00").
      Using time functions into client/ made me move them out of sql/ into sql-common/.
      + (small) fix for BUG#4507 "mysqlbinlog --read-from-remote-server sometimes
      cannot accept 2 binlogs" (that is, on command line).
      
      
      client/client_priv.h:
        new options for mysqlbinlog
      client/mysqlbinlog.cc:
        WL#1580: --start-datetime, --stop-datetime, --start-position (alias for --position) and --stop-position.
        (small) fix for BUG#4507 "mysqlbinlog --read-from-remote-server sometimes
         cannot accept 2 binlogs".
      include/my_time.h:
        importing time functions so that client/ files can use them.
      include/mysql_time.h:
        importing time types so that client/ files can use them.
      sql-common/my_time.c:
        importing time functions so that client/ files can use them.
      sql/mysql_priv.h:
        moving time functions out of sql/ into sql-common/
      sql/time.cc:
        moving time functions out of sql/ into sql-common/
      sql/tztime.h:
        moving time functions out of sql/ into sql-common/
      5296a9bf