An error occurred fetching the project authors.
  1. 15 Dec, 2009 1 commit
    • Mats Kindahl's avatar
      BUG#49618: Field length stored incorrectly in binary log · 9e980bf7
      Mats Kindahl authored
                 for InnoDB
      
      The class Field_bit_as_char stores the metadata for the
      field incorrecly because bytes_in_rec and bit_len are set
      to (field_length + 7 ) / 8 and 0 respectively, while
      Field_bit has the correct values field_length / 8 and
      field_length % 8.
      
      Solved the problem by re-computing the values for the
      metadata based on the field_length instead of using the
      bytes_in_rec and bit_len variables.
      
      To handle compatibility with old server, a table map
      flag was added to indicate that the bit computation is
      exact. If the flag is clear, the slave computes the
      number of bytes required to store the bit field and
      compares that instead, effectively allowing replication
      *without conversion* from any field length that require
      the same number of bytes to store.
      
      mysql-test/suite/rpl/t/rpl_typeconv_innodb.test:
        Adding test to check compatibility for bit field
        replication when using InnoDB.
      sql/field.cc:
        Extending compatible_field_size() with flags from
        table map to allow fields to check master info.
      sql/field.h:
        Extending compatible_field_size() with flags from
        table map to allow fields to check master info.
      sql/log.cc:
        Removing table map flags since they are not used
        outside table map class.
      sql/log_event.cc:
        Removing flags parameter from table map constructor
        since it is not used and does not have to be exposed.
      sql/log_event.h:
        Adding flag to denote that bit length for bit field type
        is exact and not potentially rounded to even bytes.
      sql/rpl_utility.cc:
        Adding fields to table_def to store table map flags.
      sql/rpl_utility.h:
        Removing obsolete comment and adding flags to store
        table map flags from master.
      9e980bf7
  2. 14 Dec, 2009 1 commit
    • Mats Kindahl's avatar
      WL#5151: Conversion between different types when replicating · 57184380
      Mats Kindahl authored
      Row-based replication requires the types of columns on the
      master and slave to be approximately the same (some safe
      conversions between strings are allowed), but does not
      allow safe conversions between fields of similar types such
      as TINYINT and INT.
      
      This patch implement type conversions between similar fields
      on the master and slave.
      
      The conversions are controlled using a new variable
      SLAVE_TYPE_CONVERSIONS of type SET('ALL_LOSSY','ALL_NON_LOSSY').
      
      Non-lossy conversions are any conversions that do not run the
      risk of losing any information, while lossy conversions can
      potentially truncate the value. The column definitions are
      checked to decide if the conversion is acceptable.
      
      If neither conversion is enabled, it is required that the
      definitions of the columns are identical on master and slave.
      
      Conversion is done by creating an internal conversion table,
      unpacking the master data into it, and then copy the data to
      the real table on the slave.
      
      .bzrignore:
        New files added
      client/Makefile.am:
        New files added
      client/mysqlbinlog.cc:
        Functions in rpl_utility.cc is now needed by mysqlbinlog.cc.
      libmysqld/Makefile.am:
        New files added
      mysql-test/extra/rpl_tests/check_type.inc:
        Test include file to check a single type conversion.
      mysql-test/extra/rpl_tests/rpl_extraSlave_Col.test:
        Switching to use INT instead of TEXT for column that should not have matching types.
      mysql-test/extra/rpl_tests/rpl_row_basic.test:
        Adding code to enable type conversions for BIT tests since InnoDB
        cannot handle them properly due to incorrect information stored as
        metadata.
      mysql-test/extra/rpl_tests/type_conversions.test:
        Test file to check a set of type conversions
        with current settings of slave_type_conversions.
      mysql-test/suite/rpl/t/rpl_typeconv.test:
        Test file to test conversions from master to slave with
        all possible values for slave_type_conversions.
        
        The test also checks that the slave_type_conversions
        variable works as expected.
      sql/field.cc:
        Changing definition of compatible_field_size to both check if 
        two field with identical base types are compatible and give an
        order between them if they are compatible.
        
        This only implement checking on the slave, so it will not affect
        replication from an old master to a new slave.
      sql/field.h:
        Changing prototypes for functions:
        - compatible_field_size()
        - init_for_tmp_table()
        - row_pack_length()
      sql/log_event.cc:
        Changing compability checks to build a conversion table if the fields
        are compatible, but does not have the same base type.
      sql/log_event_old.cc:
        Changing compability checks to build a conversion table if the fields
        are compatible, but does not have the same base type.
      sql/mysql_priv.h:
        Adding global option variable for SLAVE_TYPE_CONVERSIONS
      sql/mysqld.cc:
        Adding SLAVE_TYPE_CONVERSIONS global server variable.
      sql/rpl_record.cc:
        Changing unpack_row to use the conversion table if present.
      sql/rpl_rli.h:
        Removing function get_tabledef and replacing it with get_table_data().
        This function retrieve data for table opened for replication, not just
        table definition.
      sql/rpl_utility.cc:
        Function table_def::compatible_with is changed to compare table on master
        and slave for compatibility and generate a conversions table if they are
        compatible.
        
        Computing real type of fields from metadata for ENUM and SET types.
        Computing pack_length correctly for ENUM, SET, and BLOB types.
        
        Adding optimization to not check compatibility if no
        slave type conversions are enabled.
      sql/rpl_utility.h:
        Changing prototypes since implementation has changed.
        
        Modifying table_def::type() to return real type instead of stored type.
      sql/set_var.cc:
        Adding SLAVE_TYPE_CONVERSIONS variable.
      sql/set_var.h:
        Adding SLAVE_TYPE_CONVERSIONS variable.
      sql/share/errmsg.txt:
        Adding error messages for slave type conversions.
      sql/sql_class.h:
        Adding SLAVE_TYPE_CONVERSIONS variable.
      sql/sql_select.cc:
        Correcting create_virtual_tmp_table() to compute null bit positions
        correctly in the presence of bit fields.
      57184380
  3. 25 Mar, 2009 1 commit
    • Andrei Elkin's avatar
      Bug#42977 RBR logs for rows with more than 250 column results in corrupt binlog · 67f9a6d1
      Andrei Elkin authored
                  
      The issue happened to be two-fold.
      The table map event was recorded into binlog having
      an incorrect size when number of columns exceeded 251. 
      The Row-based event had incorrect recording and restoring m_width member within
      the same as above conditions.
      
      Fixed with correcting m_data_size and m_width.
      
      
      mysql-test/suite/rpl/r/rpl_row_wide_table.result:
        the new test results.
      mysql-test/suite/rpl/t/rpl_row_wide_table.test:
        regression test for bug#42977.
      sql/log_event.cc:
        0. all buffers that used in net_store_length() are augmented with 1 for safety
        to be able to contain the magic and the content of ulonglong as well;
        1. Rows_log_event::get_data_size() yieled incorrect size |m_width/8| whereas 
           it should be m_width;
        2. Table_map_log_event::Table_map_log_event yieled incorrect value for
           `m_data_size' probably presuming 1-byte integer max for the column number;
      sql/rpl_utility.h:
        DBUG_PRINT_BITSET() macro is left 256-cols limited but has made safe and commented.
      67f9a6d1
  4. 20 Aug, 2008 1 commit
    • Alexander Barkov's avatar
      Bug#31455 mysqlbinlog don't print user readable info about RBR events · 0c5bc2ea
      Alexander Barkov authored
      Implementing -v command line parameter to mysqlbinlog
      to decode and print row events.
      
      mysql-test/include/mysqlbinlog_row_engine.inc
      mysql-test/r/mysqlbinlog_row.result
      mysql-test/r/mysqlbinlog_row_big.result
      mysql-test/r/mysqlbinlog_row_innodb.result
      mysql-test/r/mysqlbinlog_row_myisam.result
      mysql-test/r/mysqlbinlog_row_trans.result
      mysql-test/t/mysqlbinlog_row.test
      mysql-test/t/mysqlbinlog_row_big.test
      mysql-test/t/mysqlbinlog_row_innodb.test
      mysql-test/t/mysqlbinlog_row_myisam.test
      mysql-test/t/mysqlbinlog_row_trans.test
        Adding tests 
      
      client/Makefile.am
        Adding new files to symlink
        
      client/mysqlbinlog.cc
        Adding -v option
      
      sql/log_event.cc
        Impelentations of the new methods
      
      sql/log_event.h
        Declaration of the new methods and member
      
      sql/mysql_priv.h
        Adding new function prototype
      
      sql/rpl_tblmap.cc
        Adding pre-processor conditions 
      
      sql/rpl_tblmap.h
        Adding pre-processor conditions 
      
      sql/rpl_utility.h
        Adding pre-processor conditions 
      
      sql/sql_base.cc
        Adding reset_table_id_sequence() function.
      
      sql/sql_repl.cc
        Resetting table_id on "RESET MASTER"
        
      .bzrignore
        Ignoring new symlinked files
      0c5bc2ea
  5. 14 Sep, 2007 1 commit
    • unknown's avatar
      BUG#30790 : Suspicious code in rpl_utility.cc · 431fd2c1
      unknown authored
      This patch clarifies some of the coding choices with documentationa and
      removes a limitation in the code for future expansion of the CHAR and
      BINARY fields to length > 255.
      
      
      sql/field.cc:
        BUG#30790 : Suspicious code in rpl_utility.cc
        
        This patch adds an assertion to ensure we are not attempting to encode
        negative values.
      sql/log_event.cc:
        BUG#30790 : Suspicious code in rpl_utility.cc
        
        This patch adds comments to help explain the choice of variable types.
      sql/rpl_utility.cc:
        BUG#30790 : Suspicious code in rpl_utility.cc
        
        This patch removes code from the calc_field_size that is not needed and
        was ambiguous. Originally intended to future expansion, the code was
        not needed.
        
        Also added are comments to help explain some portions of the code.
        
        A change was made to the korr method to use the unsigned version to 
        avoid extended sign problems.
      sql/rpl_utility.h:
        BUG#30790 : Suspicious code in rpl_utility.cc
        
        This patch corrects some type discrepencies and removes an extra cast.
      431fd2c1
  6. 31 Aug, 2007 1 commit
    • unknown's avatar
      Never access thd->ha_data directly, use getters/setters from the plugin · ee040ef2
      unknown authored
      API instead.
      This is a pre-requisite of the fix for Bug 12713, which changes the
      data type of thd->ha_data from void * to struct Ha_data.
      
      
      include/mysql/plugin.h:
        Provide accessors to thd->ha_data for simple and robust code.
      sql/ha_ndbcluster_binlog.h:
        Use getters/setters of thd->ha_data, instead of direct access.
      sql/handler.cc:
        Use a getter of thd->ha_data instead of direct access.
      sql/log.cc:
        Use getters/setters of thd->ha_data, instead of direct access.
      sql/rpl_utility.h:
        Fix a compilation warning (declaration order must match initialization
        order in constructor).
      storage/federated/ha_federated.cc:
        Use interface accessors to thd->ha_data, instead of direct access.
      ee040ef2
  7. 26 Aug, 2007 1 commit
    • unknown's avatar
      BUG#21842 (Cluster fails to replicate to innodb or myisam with err 134 · 642eda22
      unknown authored
      using TPC-B):
       
      Problem: A RBR event can contain incomplete row data (only key value and
      fields which have been changed). In that case, when the row is unpacked
      into record and written to a table, the missing fields get incorrect NULL
      values leading to master-slave inconsistency.
       
      Solution: Use values found in slave's table for columns which are not given
      in the rows event. The code for writing a single row uses the following 
      algorithm: 
      
      1. unpack row_data into table->record[0],
      2. try to insert record,
      3. if duplicate record found, fetch it into table->record[0],
      4. unpack row_data into table->record[0],
      5. write table->record[0] into the table.
      
      Where row_data is the row as stored in the data area of a rows event. 
      Thus:
      
      a) unpacking of row_data happens at the time when row is written into 
       a table,
      
      b) when unpacking (in step 4), only columns present in row_data are 
       overwritten - all other columns remain as they were found in the table.
       
      Since all data needed for the above algorithm is stored inside 
      Rows_log_event class, functions which locate and write rows are turned 
      into methods of that class.
      
      replace_record()     -> Rows_log_event::write_row()
      find_and_fetch_row() -> Rows_log_event::find_row()
      
      Both methods take row data from event's data buffer - the row being 
      processed is pointed by m_curr_row. They unpack the data as needed into 
      table's record buffers record[0] or record[1]. When row is unpacked, 
      m_curr_row_end is set to point at next row in the data buffer.
      
      Other changes introduced in this changeset:
      
      - Change signature of unpack_row(): don't report errors and don't
      setup table's rw_set here. Errors can happen only when setting default 
      values in prepare_record() function and are detected there.
       
      - In Rows_log_event and derived classes, don't pass arguments to
      the execution primitives (do_...() member functions) but use class
      members instead.
      
      - Move old row handling code into log_event_old.cc to be used by 
      *_rows_log_event_old classes.
      
      Also, a new test rpl_ndb_2other is added which tests basic replication 
      from master using ndb tables to slave storing the same tables using 
      (possibly) different engine (myisam,innodb).
        
      Test is based on existing tests rpl_ndb_2myisam and rpl_ndb_2innodb. 
      However, these tests doesn't work for various reasons and currently are 
      disabled (see BUG#19227).
        
      The new test differs from the ones it is based on as follows:
        
      1. Single test tests replication with different storage engines on slave 
      (myisam, innodb, ndb).
        
      2. Include file extra/rpl_tests/rpl_ndb_2multi_eng.test containing 
      original tests is replaced by extra/rpl_tests/rpl_ndb_2multi_basic.test 
      which doesn't contain tests using partitioned tables as these don't work 
      currently. Instead, it tests replication to a slave which has more or 
      less columns than master.
        
      3. Include file include/rpl_multi_engine3.inc is replaced with 
      include/rpl_multi_engine2.inc. The later differs by performing slightly 
      different operations (updating more than one row in the table) and 
      clearing table with "TRUNCATE TABLE" statement instead of "DELETE FROM" 
      as replication of "DELETE" doesn't work well in this setting.
        
      4. Slave must use option --log-slave-updates=0 as otherwise execution of 
      replication events generated by ndb fails if table uses a different 
      storage engine on slave (see BUG#29569).
      
      
      sql/log_event.cc:
        - Initialization of new Rows_log_event members.
        - Fixing some typos in documentation.
        
        In Rows_log_event::do_apply_event:
        - Set COMPLETE_ROWS_F flag (when master and slave have the same number of 
        columns and all colums are present in the row)
        - Move initialization of tables write/read sets here, outside the rows
        processing loop (and out of unpack_row() function).
        - Remove calls to do_prepare_row() - no longer needed.
        - Add code managing m_curr_row and m_curr_row_end pointers.
        
        - Change signatures of row processing methods of Rows_log_event and it
        descendants - now most arguments are taken from class members.
        - Remove do_prepare_row() methods which are no longer used.
        - The auto_afree_ptr template is moved to rpl_utility.h (so that it can
        be used in log_event_old.cc).
        - Removed copy_extra_fields() function - no longer used.
        
        In Rows_log_event::write_row (former replace_record):
        - The old code is moved to log_event_old.cc.
        - Use prepare_record() and non-destructive unpack_current_row() to fill record
        with data.
        - In case a record being inserted already exists on slave and row data is 
        incomplete use the record found and non-destructive unpack_current_row() to 
        combine new column values with existing ones.
        - More debug info added.
        
        In Rows_log_event::find_row (former find_and_fetch_row function):
        - The old code is moved to log_event_old.cc.
        - Unpacking of the row is moved here.
        - In case of search using PK, the key data is prepared here.
        - More debug info added.
        
        - Remove initialization of Rows_log_event::m_after_image buffer which is no
        longer used. 
        - Use new row unpacking methods in Update_rows_log_event::do_exec_row() to 
        create before and after image.
        
        Note: all existing code used by Rows_log_event::do_apply_event() has been moved
        to log_event_old.cc to be used by *_rows_log_event_old classes.
      sql/log_event.h:
        - Add new COMPLETE_ROWS_F flag in Rows_log_event.
        - Add Rows_log_event members describing the row being processed.
        - Add a pointer to key buffer which is used in derived classes.
        - Add new methods: find__row(), write_row() and unpack_current_row().
        - Change signatures of do_...() methods (replace method arguments by
        class members).
        - Remove do_prepare_row() method which is no longer used.
        - Update method documentation.
        - Add Old_rows_log_event class, which contains the old row processing code, as
        a friend of Rows_log_event so that it can access all members of an event 
        instance.
      sql/log_event_old.cc:
        Move here old implementation of Rows_log_event::do_apply_event() and 
        helper methods.
      sql/log_event_old.h:
        - Define new class Old_rows_log_event encapsulating old version of
        Rows_log_event::do_apply_event() and the helper methods.
        - Add the Old_rows_log_event class as a base for *_old versions of RBR event
        classes, ensure that the old version of do_apply_event() is called.
        - For *_old classes, declare the helper methods used in the old version of
        do_apply_event().
      sql/rpl_record.cc:
        - Make unpack_row non-destructive for columns not present in the row.
        - Don't fill read/write set here as it is done outside these functions.
        - Move initialization of a record with default values to a separate
        function prepare_record().
      sql/rpl_record.h:
        - Change signature of unpack_row().
        - Declare function prepare_record().
      sql/rpl_utility.cc:
        Make tabe_def::calc_field_size() a const method.
      sql/rpl_utility.h:
        Make table_def::calc_field_size() a const method.
        
        Move auto_afree_ptr template here so that it can be re-used (currently
        in log_event.cc and log_event_old.cc). Similar with DBUG_PRINT_BITSET 
        macro.
      mysql-test/extra/rpl_tests/rpl_ndb_2multi_basic.test:
        Modification of rpl_ndb_2multi_eng test. Tests with partitioned tables 
        are removed and a setup with slave having different number of columns 
        than master is added.
      mysql-test/include/rpl_multi_engine2.inc:
        Modification of rpl_multi_engine3.inc which operates on more rows and
        replaces "DELETE FROM t1" with "TRUNCATE TABLE t1" as the first form
        doesn't replicate in NDB -> non-NDB setting (BUG#28538).
      mysql-test/suite/rpl_ndb/r/rpl_ndb_2other.result:
        Results of the test.
      mysql-test/suite/rpl_ndb/t/rpl_ndb_2other-slave.opt:
        Test options. --log-slave-updates=0 is compulsory as otherwise non-NDB 
        slave applying row events from NDB master will fail when trying to log
        them.
      mysql-test/suite/rpl_ndb/t/rpl_ndb_2other.test:
        Test replication of NDB table to slave using other engine. The main test
        is in extra/rpl_tests/rpl_ndb_2multi_basic.test. It is included here
        several times with different settings of default storage engine on slave.
      642eda22
  8. 16 Aug, 2007 1 commit
    • unknown's avatar
      Renaming RELAY_LOG_INFO and st_relay_log_info to follow coding standards · 044a4a3e
      unknown authored
      (and be more friendly to Doxygen by removing unnecessary typedefs).
      
      
      sql/log.cc:
        Renaming struct st_relay_log_info to class Relay_log_info.
      sql/log.h:
        Renaming struct st_relay_log_info to class Relay_log_info.
      sql/log_event.cc:
        Renaming RELAY_LOG_INFO to Relay_log_info.
      sql/log_event.h:
        Renaming struct st_relay_log_info to class Relay_log_info.
        Renaming RELAY_LOG_INFO to Relay_log_info.
        Removing typedef RELAY_LOG_INFO.
      sql/log_event_old.cc:
        Renaming RELAY_LOG_INFO to Relay_log_info.
      sql/log_event_old.h:
        Renaming RELAY_LOG_INFO to Relay_log_info.
      sql/rpl_mi.h:
        Renaming RELAY_LOG_INFO to Relay_log_info.
      sql/rpl_record.cc:
        Renaming RELAY_LOG_INFO to Relay_log_info.
      sql/rpl_record.h:
        Renaming RELAY_LOG_INFO to Relay_log_info.
      sql/rpl_record_old.cc:
        Renaming RELAY_LOG_INFO to Relay_log_info.
      sql/rpl_record_old.h:
        Renaming RELAY_LOG_INFO to Relay_log_info.
      sql/rpl_rli.cc:
        Renaming struct st_relay_log_info to class Relay_log_info.
        Renaming RELAY_LOG_INFO to Relay_log_info.
      sql/rpl_rli.h:
        Renaming struct st_relay_log_info to class Relay_log_info.
        Renaming RELAY_LOG_INFO to Relay_log_info.
        Removing typedef RELAY_LOG_INFO.
      sql/rpl_utility.cc:
        Renaming RELAY_LOG_INFO to Relay_log_info.
      sql/rpl_utility.h:
        Renaming struct st_relay_log_info to class Relay_log_info.
        Renaming RELAY_LOG_INFO to Relay_log_info.
        Removing typedef RELAY_LOG_INFO.
      sql/slave.cc:
        Renaming RELAY_LOG_INFO to Relay_log_info.
      sql/slave.h:
        Renaming struct st_relay_log_info to class Relay_log_info.
        Renaming RELAY_LOG_INFO to Relay_log_info.
        Removing typedef RELAY_LOG_INFO.
      sql/sql_binlog.cc:
        Renaming RELAY_LOG_INFO to Relay_log_info.
      sql/sql_class.h:
        Renaming struct st_relay_log_info to class Relay_log_info.
        Renaming RELAY_LOG_INFO to Relay_log_info.
        Removing typedef RELAY_LOG_INFO.
      sql/sql_repl.cc:
        Renaming RELAY_LOG_INFO to Relay_log_info.
      044a4a3e
  9. 10 Aug, 2007 1 commit
    • unknown's avatar
      BUG#22086 : Extra Slave Col: Char(5) on slave and Char(10) on master cause mysqld crash · 9ad300d5
      unknown authored
      This patch adds functionality to row-based replication to ensure the
      slave's column sizes are >= to that of the master.
      
      It also includes some refactoring for the code from WL#3228.
      
      
      mysql-test/extra/rpl_tests/rpl_extraSlave_Col.test:
        BUG#22086 : Extra Slave Col: Char(5) on slave and Char(10) on master cause mysqld crash 
        
        Removed commented out portion of test referenced in bug report. This
        test supports the original request of the bug report.
      mysql-test/suite/rpl/r/rpl_extraCol_innodb.result:
        BUG#22086 : Extra Slave Col: Char(5) on slave and Char(10) on master cause mysqld crash 
        
        New result file for additional test.
      mysql-test/suite/rpl/r/rpl_extraCol_myisam.result:
        BUG#22086 : Extra Slave Col: Char(5) on slave and Char(10) on master cause mysqld crash 
        
        New result file for additional test.
      mysql-test/suite/rpl_ndb/r/rpl_ndb_extraCol.result:
        BUG#22086 : Extra Slave Col: Char(5) on slave and Char(10) on master cause mysqld crash 
        
        New result file for additional test.
      sql/field.cc:
        BUG#22086 : Extra Slave Col: Char(5) on slave and Char(10) on master cause mysqld crash 
        
        This patch refactors the additions made by this bug patch and those
        made by WL#3228. The effort consolidates the large switches on type()
        into functions within the field classes.
      sql/field.h:
        BUG#22086 : Extra Slave Col: Char(5) on slave and Char(10) on master cause mysqld crash 
        
        This patch refactors the additions made by this bug patch and those
        made by WL#3228. The effort consolidates the large switches on type()
        into functions within the field classes.
      sql/log_event.cc:
        BUG#22086 : Extra Slave Col: Char(5) on slave and Char(10) on master cause mysqld crash 
        
        This patch refactors the calc_field_size() method to use the new
        methods implemented in the field classes. It also corrects comments 
        concerning how replication of field metadata works.
      sql/log_event.h:
        BUG#22086 : Extra Slave Col: Char(5) on slave and Char(10) on master cause mysqld crash 
        
        This patch refactors out the calc_field_size() method into the method
        save_field_metadata().
      sql/rpl_utility.cc:
        BUG#22086 : Extra Slave Col: Char(5) on slave and Char(10) on master cause mysqld crash 
        
        This patch adds a method to check the size of the field on the master 
        using the field metadata from WL#3228. Each column is checked to ensure 
        the slave's column is >= to the master's column in size.
      sql/rpl_utility.h:
        BUG#22086 : Extra Slave Col: Char(5) on slave and Char(10) on master cause mysqld crash 
        
        This patch changes the table_def class so that it records the size of
        the metadata. This is a result of refactoring out the calc_field_size()
        method into the method save_field_metadata(). Prevents access via 
        field_metadata(col) to unitialized memory when there is no metadata
        transmitted from the master.
      mysql-test/suite/rpl/r/rpl_row_colSize.result:
        BUG#22086 : Extra Slave Col: Char(5) on slave and Char(10) on master cause mysqld crash 
        
        New result file for additional test.
      mysql-test/suite/rpl/t/rpl_row_colSize.test:
        BUG#22086 : Extra Slave Col: Char(5) on slave and Char(10) on master cause mysqld crash 
        
        Added a test file to test each variable type that relies on field
        metadata from the master.
      mysql-test/include/test_fieldsize.inc:
        BUG#22086 : Extra Slave Col: Char(5) on slave and Char(10) on master cause mysqld crash 
        
        Sub unit file to test each variable type that relies on field
        metadata from the master.
      9ad300d5
  10. 03 Aug, 2007 1 commit
    • unknown's avatar
      Fixes to eliminate valgrind warnings. · a04dff19
      unknown authored
      sql/rpl_record.cc:
        Factoring out expression and putting it in an auto variable.
      sql/rpl_utility.cc:
        Removing a check that causes compile warnings.
      sql/rpl_utility.h:
        Ensuring that there is enough memory for the metadata, to avoid reads
        from uninitialized memory. Initializing the memory to keep valgrind
        quiet.
      a04dff19
  11. 30 Jul, 2007 1 commit
    • unknown's avatar
      WL#3228 (NDB) : RBR using different table defs on slave/master · 21c55af5
      unknown authored
      Minor refactoring to remove compile warnings and possibly fix the
      Solaris test failures.
      
      
      sql/log_event.cc:
        WL#3228 (NDB) : RBR using different table defs on slave/master
        
        Minor refactoring.
      sql/rpl_utility.cc:
        WL#3228 (NDB) : RBR using different table defs on slave/master
        
        Minor refactoring.
      sql/rpl_utility.h:
        WL#3228 (NDB) : RBR using different table defs on slave/master
        
        Minor refactoring.
      21c55af5
  12. 29 Jul, 2007 2 commits
    • unknown's avatar
      WL#3228 (NDB) : RBR using different table defs on slave/master · d4671354
      unknown authored
      This patch adds the ability to store extra field metadata in the table
      map event. This data can include pack_length() or field_lenght() for
      fields such as CHAR or VARCHAR enabling developers to add code that
      can check for compatibilty between master and slave columns. More 
      importantly, the extra field metadata can be used to store data from the
      master correctly should a VARCHAR field on the master be <= 255 bytes 
      while the same field on the slave is > 255 bytes. 
      
      The patch also includes the needed changes to unpack to ensure that data
      which is smaller on the master can be unpacked correctly on the slave.
      
      WL#3915 : (NDB) master's cols > slave
      
      Slave starts accepting and handling rows of master's tables which have more columns.
      The most important part of implementation is how to caclulate the amount of bytes to
      skip for unknown by slave column.
      
      
      mysql-test/suite/binlog/t/binlog_row_mix_innodb_myisam.test:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch changes the test to coincide with changes to binlog
        size of table map event.
      mysql-test/suite/rpl/r/rpl_row_basic_11bugs.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a new result file as a result of the change to the
        size of the tablemap log event.
      mysql-test/suite/rpl/r/rpl_row_create_table.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a new result file as a result of the change to the
        size of the tablemap log event.
      mysql-test/suite/rpl/r/rpl_row_flsh_tbls.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a new result file as a result of the change to the
        size of the tablemap log event.
      mysql-test/suite/rpl/r/rpl_row_inexist_tbl.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a new result file as a result of the change to the
        size of the tablemap log event.
      mysql-test/suite/rpl/r/rpl_row_log.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a new result file as a result of the change to the
        size of the tablemap log event.
      mysql-test/suite/rpl/r/rpl_row_log_innodb.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a new result file as a result of the change to the
        size of the tablemap log event.
      mysql-test/suite/rpl/r/rpl_row_max_relay_size.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a new result file as a result of the change to the
        size of the tablemap log event.
      mysql-test/suite/rpl/r/rpl_row_tabledefs_2myisam.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a new result file as a result of the change to the
        size of the tablemap log event.
      mysql-test/suite/rpl/r/rpl_row_tabledefs_3innodb.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a new result file as a result of the change to the
        size of the tablemap log event.
      mysql-test/suite/rpl/r/rpl_row_until.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a new result file as a result of the change to the
        size of the tablemap log event.
      mysql-test/suite/rpl/r/rpl_skip_error.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a new result file as a result of the change to the
        size of the tablemap log event.
      mysql-test/suite/rpl/t/disabled.def:
        WL#3915  master's cols > slave
        
        Disabled the rpl_stm_extraColmaster_ndb test because statement-based
        replication is not supported in NDB at this time. It can be enabled
        when statement-based replication for NDB is released.
      mysql-test/suite/rpl/t/rpl_row_create_table.test:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch corrects binlog positions a result of the change to the
        size of the tablemap log event.
      mysql-test/suite/rpl/t/rpl_row_flsh_tbls.test:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch corrects binlog positions a result of the change to the
        size of the tablemap log event.
      mysql-test/suite/rpl_ndb/r/rpl_ndb_log.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a new result file as a result of the change to the
        size of the tablemap log event.
      mysql-test/suite/rpl_ndb/r/rpl_truncate_7ndb.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a new result file as a result of the change to the
        size of the tablemap log event.
      sql/field.cc:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch includes updates to the unpack() methods for the variable
        length fields. A new parameter was added (from_length) that is the
        value stored in the field_metadata of the table map from the table_def
        class. If the value is non-zero and less than what the field on the 
        slave is then use the from_length else use the original value from the
        field on the slave.
      sql/field.h:
        L#3228 : RBR using different table defs on slave/master
        
        This patch includes updates to the unpack() methods for the variable
        length fields. A new parameter was added (from_length) that is the
        value stored in the field_metadata of the table map from the table_def
        class.
      sql/log_event.cc:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch adds methods to calculate the field metadata size, prepare
        the field metadata for writing to the binlog, and additions to the
        Table_map_log_event::write_body method to include the field metadata 
        in the table map that is written to the binlog.
        
        WL#3915  master's cols > slave
        
        copying extra (slave's) fields returns early if master's table version is wider;
        removing assert in the way of master > slave cols.
      sql/log_event.h:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch adds method declarations and variables needed to support
        storing field metadata in the table map that is written to the binlog.
      sql/rpl_record.cc:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch modifies the unpack_row() method to unpack fields passing in
        the value from the table_def class. This value is the extra field
        metadata stored there from the master.
        
        WL#3915  master's cols > slave
        
        adding a snippet that shift exectution curson donw the row skipping unknown by slave
        fields' data.
      sql/rpl_rli.h:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch adds a helper function to retrieve the table_def for a given
        table in the RPL_TABLE_LIST structure.
      sql/rpl_utility.cc:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch adds a helper method that retrieves the correct size 
        parameter for the field. This method is used to compare the size as
        sent by the master with that on the slave for all types of fields that
        can vary in size and storage requirements. 
        
        WL#3915  master's cols > slave
        
        Remove warning message for master's cols > slave.
      sql/rpl_utility.h:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch changes the table_def class constructor to pass in the raw
        data read from the table map and extract it into an array of dimension
        size (number of fields). It also adds a method to return the field 
        metadata for any field. The method returns the data stored in the table
        map or 0 if no data was stored for that field. Lastly, a method to return
        the results of field->maybe_null() is included so that the slave can
        determine if a field that is not on the slave is null.
      mysql-test/suite/rpl/t/rpl_colSize.test:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a new test designed to test the feature of having
        columns on the master that are smaller than what is on the slave.
      mysql-test/suite/rpl/t/rpl_extraColmaster_innodb-master.opt:
        WL#3915  master's cols > slave
        
        option for innodb
      mysql-test/suite/rpl/t/rpl_extraColmaster_innodb-slave.opt:
        WL#3915  master's cols > slave
        
        option for innodb
      mysql-test/suite/rpl/t/rpl_extraColmaster_innodb.test:
        WL#3915  master's cols > slave
        
        Test of innodb. Test runs in both statement- and row-based replication.
      mysql-test/suite/rpl/t/rpl_extraColmaster_myisam.test:
        WL#3915  master's cols > slave
        
        Test of myisam. Test runs in both statement- and row-based replication.
      mysql-test/suite/rpl/r/rpl_colSize.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the new test designed to test the 
        feature of having columns on the master that are smaller than what is 
        on the slave.
      mysql-test/suite/rpl/t/rpl_row_extraColmaster_ndb.test:
        WL#3915  master's cols > slave
        
        Test of ndb. Test runs in row-based replication.
      mysql-test/suite/rpl/t/rpl_stm_extraColmaster_ndb.test:
        WL#3915  master's cols > slave
        
        Test of ndb. Test runs in statement-based replication.
      mysql-test/suite/rpl/r/rpl_extraColmaster_innodb.result:
        WL#3915  master's cols > slave
        
        new results
      mysql-test/suite/rpl/r/rpl_extraColmaster_myisam.result:
        WL#3915  master's cols > slave
        
        new results
      mysql-test/extra/rpl_tests/rpl_extraMaster_Col.test:
        WL#3915  master's cols > slave
        
        basic tests checking altering and skipping extra fields by slave.
        The fields can be of any possible types.
      mysql-test/suite/rpl/r/rpl_row_extraColmaster_ndb.result:
        WL#3915  master's cols > slave
        
        new results
      d4671354
    • unknown's avatar
      WL#3228 (NDB) : RBR using different table defs on slave/master · 6b001563
      unknown authored
      This patch corrects a incorrect type conversion during encoding and
      decoding the length for VARCHAR fields.
      
      
      sql/log_event.cc:
        WL#3228 (NDB) : RBR using different table defs on slave/master
        
        This patch changes the encoding of the 16-bit length value for
        VARCHAR field correcting an undetected type conflict.
      sql/rpl_utility.h:
        WL#3228 (NDB) : RBR using different table defs on slave/master
        
        This patch changes the decoding of the 16-bit length value for
        VARCHAR field correcting an undetected type conflict.
      6b001563
  13. 28 Jul, 2007 2 commits
  14. 27 Jul, 2007 2 commits
    • unknown's avatar
      WL#3228 (NDB) : RBR using different table defs on slave/master · ef79d224
      unknown authored
      This patch adds the ability to store extra field metadata in the table
      map event. This data can include pack_length() or field_lenght() for
      fields such as CHAR or VARCHAR enabling developers to add code that
      can check for compatibilty between master and slave columns. More 
      importantly, the extra field metadata can be used to store data from the
      master correctly should a VARCHAR field on the master be <= 255 bytes 
      while the same field on the slave is > 255 bytes. '
      
      The patch also includes the needed changes to unpack to ensure that data
      which is smaller on the master can be unpacked correctly on the slave.
      
      
      mysql-test/extra/rpl_tests/rpl_log.test:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch changes the test to display slave status vertically.
      mysql-test/r/rpl_ndb_log.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the new test designed to test the 
        feature of having columns on the master that are smaller than what is 
        on the slave.
      mysql-test/r/rpl_rbr_to_sbr.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the new test designed to test the 
        feature of having columns on the master that are smaller than what is 
        on the slave.
      mysql-test/r/rpl_row_basic_11bugs.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the new test designed to test the 
        feature of having columns on the master that are smaller than what is 
        on the slave.
      mysql-test/r/rpl_row_create_table.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the new test designed to test the 
        feature of having columns on the master that are smaller than what is 
        on the slave.
      mysql-test/r/rpl_row_flsh_tbls.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the new test designed to test the 
        feature of having columns on the master that are smaller than what is 
        on the slave.
      mysql-test/r/rpl_row_inexist_tbl.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the new test designed to test the 
        feature of having columns on the master that are smaller than what is 
        on the slave.
      mysql-test/r/rpl_row_log.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the new test designed to test the 
        feature of having columns on the master that are smaller than what is 
        on the slave.
      mysql-test/r/rpl_row_log_innodb.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the new test designed to test the 
        feature of having columns on the master that are smaller than what is 
        on the slave.
      mysql-test/r/rpl_row_max_relay_size.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the new test designed to test the 
        feature of having columns on the master that are smaller than what is 
        on the slave.
      mysql-test/r/rpl_row_until.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the new test designed to test the 
        feature of having columns on the master that are smaller than what is 
        on the slave.
      mysql-test/r/rpl_stm_log.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the rpl_log.test modifications.
      mysql-test/r/rpl_truncate_7ndb.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the new test designed to test the 
        feature of having columns on the master that are smaller than what is 
        on the slave.
      mysql-test/t/binlog_row_mix_innodb_myisam.test:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch changes the test to coincide with changes to binlog
        size of table map event.
      mysql-test/t/rpl_row_create_table.test:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch changes the test to coincide with changes to binlog
        size of table map event.
      mysql-test/t/rpl_row_flsh_tbls.test:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch changes the test to coincide with changes to binlog
        size of table map event.
      sql/field.cc:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch includes updates to the unpack() methods for the variable
        length fields. A new parameter was added (from_length) that is the
        value stored in the field_metadata of the table map from the table_def
        class. If the value is non-zero and less than what the field on the 
        slave is then use the from_length else use the original value from the
        field on the slave.
      sql/field.h:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch includes updates to the unpack() methods for the variable
        length fields. A new parameter was added (from_length) that is the
        value stored in the field_metadata of the table map from the table_def
        class.
      sql/log_event.cc:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch adds methods to calculate the field metadata size, prepare
        the field metadata for writing to the binlog, and additions to the
        Table_map_log_event::write_body method to include the field metadata 
        in the table map that is written to the binlog.
      sql/log_event.h:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch adds method declarations and variables needed to support
        storing field metadata in the table map that is written to the binlog.
      sql/rpl_record.cc:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch modifies the unpack_row() method to unpack fields passing in
        the value from the table_def class. This value is the extra field
        metadata stored there from the master.
      sql/rpl_rli.h:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch adds a helper function to retrieve the table_def for a given
        table in the RPL_TABLE_LIST structure.
      sql/rpl_utility.cc:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch adds a helper method that retrieves the correct size 
        parameter for the field. This method is used to compare the size as
        sent by the master with that on the slave for all types of fields that
        can vary in size and storage requirements.
      sql/rpl_utility.h:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch changes the table_def class constructor to pass in the raw
        data read from the table map and extract it into an array of dimension
        size (number of fields). It also adds a method to return the field 
        metadata for any field. The method returns the data stored in the table
        map or 0 if no data was stored for that field. Lastly, a method to return
        the results of field->maybe_null() is included so that the slave can
        determine if a field that is not on the slave is null.
      mysql-test/t/rpl_colSize.test:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a new test designed to test the feature of having
        columns on the master that are smaller than what is on the slave.
      mysql-test/r/rpl_colSize.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the new test designed to test the 
        feature of having columns on the master that are smaller than what is 
        on the slave.
      ef79d224
    • unknown's avatar
      WL#3228 (NDB) : RBR using different table defs on slave/master · 0e0b05ec
      unknown authored
      This patch adds the ability to store extra field metadata in the table
      map event. This data can include pack_length() or field_lenght() for
      fields such as CHAR or VARCHAR enabling developers to add code that
      can check for compatibilty between master and slave columns. More 
      importantly, the extra field metadata can be used to store data from the
      master correctly should a VARCHAR field on the master be <= 255 bytes 
      while the same field on the slave is > 255 bytes. '
      
      The patch also includes the needed changes to unpack to ensure that data
      which is smaller on the master can be unpacked correctly on the slave.
      
      
      mysql-test/extra/rpl_tests/rpl_log.test:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch changes the test to display slave status vertically.
      mysql-test/r/rpl_ndb_log.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the new test designed to test the 
        feature of having columns on the master that are smaller than what is 
        on the slave.
      mysql-test/r/rpl_rbr_to_sbr.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the new test designed to test the 
        feature of having columns on the master that are smaller than what is 
        on the slave.
      mysql-test/r/rpl_row_basic_11bugs.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the new test designed to test the 
        feature of having columns on the master that are smaller than what is 
        on the slave.
      mysql-test/r/rpl_row_create_table.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the new test designed to test the 
        feature of having columns on the master that are smaller than what is 
        on the slave.
      mysql-test/r/rpl_row_flsh_tbls.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the new test designed to test the 
        feature of having columns on the master that are smaller than what is 
        on the slave.
      mysql-test/r/rpl_row_inexist_tbl.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the new test designed to test the 
        feature of having columns on the master that are smaller than what is 
        on the slave.
      mysql-test/r/rpl_row_log.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the new test designed to test the 
        feature of having columns on the master that are smaller than what is 
        on the slave.
      mysql-test/r/rpl_row_log_innodb.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the new test designed to test the 
        feature of having columns on the master that are smaller than what is 
        on the slave.
      mysql-test/r/rpl_row_max_relay_size.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the new test designed to test the 
        feature of having columns on the master that are smaller than what is 
        on the slave.
      mysql-test/r/rpl_row_until.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the new test designed to test the 
        feature of having columns on the master that are smaller than what is 
        on the slave.
      mysql-test/r/rpl_stm_log.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the rpl_log.test modifications.
      mysql-test/r/rpl_truncate_7ndb.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the new test designed to test the 
        feature of having columns on the master that are smaller than what is 
        on the slave.
      mysql-test/t/binlog_row_mix_innodb_myisam.test:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch changes the test to coincide with changes to binlog
        size of table map event.
      mysql-test/t/rpl_row_create_table.test:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch changes the test to coincide with changes to binlog
        size of table map event.
      mysql-test/t/rpl_row_flsh_tbls.test:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch changes the test to coincide with changes to binlog
        size of table map event.
      sql/field.cc:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch includes updates to the unpack() methods for the variable
        length fields. A new parameter was added (from_length) that is the
        value stored in the field_metadata of the table map from the table_def
        class. If the value is non-zero and less than what the field on the 
        slave is then use the from_length else use the original value from the
        field on the slave.
      sql/field.h:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch includes updates to the unpack() methods for the variable
        length fields. A new parameter was added (from_length) that is the
        value stored in the field_metadata of the table map from the table_def
        class.
      sql/log_event.cc:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch adds methods to calculate the field metadata size, prepare
        the field metadata for writing to the binlog, and additions to the
        Table_map_log_event::write_body method to include the field metadata 
        in the table map that is written to the binlog.
      sql/log_event.h:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch adds method declarations and variables needed to support
        storing field metadata in the table map that is written to the binlog.
      sql/rpl_record.cc:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch modifies the unpack_row() method to unpack fields passing in
        the value from the table_def class. This value is the extra field
        metadata stored there from the master.
      sql/rpl_rli.h:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch adds a helper function to retrieve the table_def for a given
        table in the RPL_TABLE_LIST structure.
      sql/rpl_utility.cc:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch adds a helper method that retrieves the correct size 
        parameter for the field. This method is used to compare the size as
        sent by the master with that on the slave for all types of fields that
        can vary in size and storage requirements.
      sql/rpl_utility.h:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch changes the table_def class constructor to pass in the raw
        data read from the table map and extract it into an array of dimension
        size (number of fields). It also adds a method to return the field 
        metadata for any field. The method returns the data stored in the table
        map or 0 if no data was stored for that field. Lastly, a method to return
        the results of field->maybe_null() is included so that the slave can
        determine if a field that is not on the slave is null.
      mysql-test/r/rpl_colSize.result:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a result file for the new test designed to test the 
        feature of having columns on the master that are smaller than what is 
        on the slave.
      mysql-test/t/rpl_colSize.test:
        WL#3228 : RBR using different table defs on slave/master
        
        This patch contains a new test designed to test the feature of having
        columns on the master that are smaller than what is on the slave.
      0e0b05ec
  15. 16 Jul, 2007 1 commit
    • unknown's avatar
      Post-merge fixes (merge from the main). · bc642e11
      unknown authored
      mysql-test/r/innodb_mysql.result:
        Update test results (merge from the main tree).
      mysql-test/r/query_cache.result:
        Update test results (merge from the main tree).
      mysql-test/r/sp.result:
        Update test results (merge from the main tree).
      mysql-test/t/query_cache.test:
        Use --echo End of to simplify future merges.
      sql/handler.h:
        st_table_list -> TABLE_LIST
      sql/item_create.cc:
        A post-merge fix (this code is in sql_yacc.yy in 5.0)
      sql/rpl_utility.h:
        st_table_list -> TABLE_LIST
      sql/sp.cc:
        A post-merge fix.
      sql/sp_head.cc:
        In 5.1 memdup_root returns void*.
      sql/sql_show.cc:
        st_table_list -> TABLE_LIST
      sql/sql_show.h:
        st_table_list -> TABLE_LIST
      sql/sql_yacc.yy:
        A post-merge fix.
      sql/table.cc:
        st_table_list -> TABLE_LIST
      sql/table.h:
        st_table_list -> TABLE_LIST
      bc642e11
  16. 10 May, 2007 1 commit
    • unknown's avatar
      WL#3817: Simplify string / memory area types and make things more consistent (first part) · f252f924
      unknown authored
      The following type conversions was done:
      
      - Changed byte to uchar
      - Changed gptr to uchar*
      - Change my_string to char *
      - Change my_size_t to size_t
      - Change size_s to size_t
      
      Removed declaration of byte, gptr, my_string, my_size_t and size_s. 
      
      Following function parameter changes was done:
      - All string functions in mysys/strings was changed to use size_t
        instead of uint for string lengths.
      - All read()/write() functions changed to use size_t (including vio).
      - All protocoll functions changed to use size_t instead of uint
      - Functions that used a pointer to a string length was changed to use size_t*
      - Changed malloc(), free() and related functions from using gptr to use void *
        as this requires fewer casts in the code and is more in line with how the
        standard functions work.
      - Added extra length argument to dirname_part() to return the length of the
        created string.
      - Changed (at least) following functions to take uchar* as argument:
        - db_dump()
        - my_net_write()
        - net_write_command()
        - net_store_data()
        - DBUG_DUMP()
        - decimal2bin() & bin2decimal()
      - Changed my_compress() and my_uncompress() to use size_t. Changed one
        argument to my_uncompress() from a pointer to a value as we only return
        one value (makes function easier to use).
      - Changed type of 'pack_data' argument to packfrm() to avoid casts.
      - Changed in readfrm() and writefrom(), ha_discover and handler::discover()
        the type for argument 'frmdata' to uchar** to avoid casts.
      - Changed most Field functions to use uchar* instead of char* (reduced a lot of
        casts).
      - Changed field->val_xxx(xxx, new_ptr) to take const pointers.
      
      Other changes:
      - Removed a lot of not needed casts
      - Added a few new cast required by other changes
      - Added some cast to my_multi_malloc() arguments for safety (as string lengths
        needs to be uint, not size_t).
      - Fixed all calls to hash-get-key functions to use size_t*. (Needed to be done
        explicitely as this conflict was often hided by casting the function to
        hash_get_key).
      - Changed some buffers to memory regions to uchar* to avoid casts.
      - Changed some string lengths from uint to size_t.
      - Changed field->ptr to be uchar* instead of char*. This allowed us to
        get rid of a lot of casts.
      - Some changes from true -> TRUE, false -> FALSE, unsigned char -> uchar
      - Include zlib.h in some files as we needed declaration of crc32()
      - Changed MY_FILE_ERROR to be (size_t) -1.
      - Changed many variables to hold the result of my_read() / my_write() to be
        size_t. This was needed to properly detect errors (which are
        returned as (size_t) -1).
      - Removed some very old VMS code
      - Changed packfrm()/unpackfrm() to not be depending on uint size
        (portability fix)
      - Removed windows specific code to restore cursor position as this
        causes slowdown on windows and we should not mix read() and pread()
        calls anyway as this is not thread safe. Updated function comment to
        reflect this. Changed function that depended on original behavior of
        my_pwrite() to itself restore the cursor position (one such case).
      - Added some missing checking of return value of malloc().
      - Changed definition of MOD_PAD_CHAR_TO_FULL_LENGTH to avoid 'long' overflow.
      - Changed type of table_def::m_size from my_size_t to ulong to reflect that
        m_size is the number of elements in the array, not a string/memory
        length.
      - Moved THD::max_row_length() to table.cc (as it's not depending on THD).
        Inlined max_row_length_blob() into this function.
      - More function comments
      - Fixed some compiler warnings when compiled without partitions.
      - Removed setting of LEX_STRING() arguments in declaration (portability fix).
      - Some trivial indentation/variable name changes.
      - Some trivial code simplifications:
        - Replaced some calls to alloc_root + memcpy to use
          strmake_root()/strdup_root().
        - Changed some calls from memdup() to strmake() (Safety fix)
        - Simpler loops in client-simple.c
      
      
      BitKeeper/etc/ignore:
        added libmysqld/ha_ndbcluster_cond.cc
        ---
        added debian/defs.mk debian/control
      client/completion_hash.cc:
        Remove not needed casts
      client/my_readline.h:
        Remove some old types
      client/mysql.cc:
        Simplify types
      client/mysql_upgrade.c:
        Remove some old types
        Update call to dirname_part
      client/mysqladmin.cc:
        Remove some old types
      client/mysqlbinlog.cc:
        Remove some old types
        Change some buffers to be uchar to avoid casts
      client/mysqlcheck.c:
        Remove some old types
      client/mysqldump.c:
        Remove some old types
        Remove some not needed casts
        Change some string lengths to size_t
      client/mysqlimport.c:
        Remove some old types
      client/mysqlshow.c:
        Remove some old types
      client/mysqlslap.c:
        Remove some old types
        Remove some not needed casts
      client/mysqltest.c:
        Removed some old types
        Removed some not needed casts
        Updated hash-get-key function arguments
        Updated parameters to dirname_part()
      client/readline.cc:
        Removed some old types
        Removed some not needed casts
        Changed some string lengths to use size_t
      client/sql_string.cc:
        Removed some old types
      dbug/dbug.c:
        Removed some old types
        Changed some string lengths to use size_t
        Changed some prototypes to avoid casts
      extra/comp_err.c:
        Removed some old types
      extra/innochecksum.c:
        Removed some old types
      extra/my_print_defaults.c:
        Removed some old types
      extra/mysql_waitpid.c:
        Removed some old types
      extra/perror.c:
        Removed some old types
      extra/replace.c:
        Removed some old types
        Updated parameters to dirname_part()
      extra/resolve_stack_dump.c:
        Removed some old types
      extra/resolveip.c:
        Removed some old types
      include/config-win.h:
        Removed some old types
      include/decimal.h:
        Changed binary strings to be uchar* instead of char*
      include/ft_global.h:
        Removed some old types
      include/hash.h:
        Removed some old types
      include/heap.h:
        Removed some old types
        Changed records_under_level to be 'ulong' instead of 'uint' to clarify usage of variable
      include/keycache.h:
        Removed some old types
      include/m_ctype.h:
        Removed some old types
        Changed some string lengths to use size_t
        Changed character length functions to return uint
        unsigned char -> uchar
      include/m_string.h:
        Removed some old types
        Changed some string lengths to use size_t
      include/my_alloc.h:
        Changed some string lengths to use size_t
      include/my_base.h:
        Removed some old types
      include/my_dbug.h:
        Removed some old types
        Changed some string lengths to use size_t
        Changed db_dump() to take uchar * as argument for memory to reduce number of casts in usage
      include/my_getopt.h:
        Removed some old types
      include/my_global.h:
        Removed old types:
        my_size_t -> size_t
        byte -> uchar
        gptr -> uchar *
      include/my_list.h:
        Removed some old types
      include/my_nosys.h:
        Removed some old types
      include/my_pthread.h:
        Removed some old types
      include/my_sys.h:
        Removed some old types
        Changed MY_FILE_ERROR to be in line with new definitions of my_write()/my_read()
        Changed some string lengths to use size_t
        my_malloc() / my_free() now uses void *
        Updated parameters to dirname_part() & my_uncompress()
      include/my_tree.h:
        Removed some old types
      include/my_trie.h:
        Removed some old types
      include/my_user.h:
        Changed some string lengths to use size_t
      include/my_vle.h:
        Removed some old types
      include/my_xml.h:
        Removed some old types
        Changed some string lengths to use size_t
      include/myisam.h:
        Removed some old types
      include/myisammrg.h:
        Removed some old types
      include/mysql.h:
        Removed some old types
        Changed byte streams to use uchar* instead of char*
      include/mysql_com.h:
        Removed some old types
        Changed some string lengths to use size_t
        Changed some buffers to be uchar* to avoid casts
      include/queues.h:
        Removed some old types
      include/sql_common.h:
        Removed some old types
      include/sslopt-longopts.h:
        Removed some old types
      include/violite.h:
        Removed some old types
        Changed some string lengths to use size_t
      libmysql/client_settings.h:
        Removed some old types
      libmysql/libmysql.c:
        Removed some old types
      libmysql/manager.c:
        Removed some old types
      libmysqld/emb_qcache.cc:
        Removed some old types
      libmysqld/emb_qcache.h:
        Removed some old types
      libmysqld/lib_sql.cc:
        Removed some old types
        Removed some not needed casts
        Changed some buffers to be uchar* to avoid casts
        true -> TRUE, false -> FALSE
      mysys/array.c:
        Removed some old types
      mysys/charset.c:
        Changed some string lengths to use size_t
      mysys/checksum.c:
        Include zlib to get definition for crc32
        Removed some old types
      mysys/default.c:
        Removed some old types
        Changed some string lengths to use size_t
      mysys/default_modify.c:
        Changed some string lengths to use size_t
        Removed some not needed casts
      mysys/hash.c:
        Removed some old types
        Changed some string lengths to use size_t
        Note: Prototype of hash_key() has changed which may cause problems if client uses hash_init() with a cast for the hash-get-key function.
        hash_element now takes 'ulong' as the index type (cleanup)
      mysys/list.c:
        Removed some old types
      mysys/mf_cache.c:
        Changed some string lengths to use size_t
      mysys/mf_dirname.c:
        Removed some old types
        Changed some string lengths to use size_t
        Added argument to dirname_part() to avoid calculation of length for 'to'
      mysys/mf_fn_ext.c:
        Removed some old types
        Updated parameters to dirname_part()
      mysys/mf_format.c:
        Removed some old types
        Changed some string lengths to use size_t
      mysys/mf_getdate.c:
        Removed some old types
      mysys/mf_iocache.c:
        Removed some old types
        Changed some string lengths to use size_t
        Changed calculation of 'max_length' to be done the same way in all functions
      mysys/mf_iocache2.c:
        Removed some old types
        Changed some string lengths to use size_t
        Clean up comments
        Removed not needed indentation
      mysys/mf_keycache.c:
        Removed some old types
      mysys/mf_keycaches.c:
        Removed some old types
      mysys/mf_loadpath.c:
        Removed some old types
      mysys/mf_pack.c:
        Removed some old types
        Changed some string lengths to use size_t
        Removed some not needed casts
        Removed very old VMS code
        Updated parameters to dirname_part()
        Use result of dirnam_part() to remove call to strcat()
      mysys/mf_path.c:
        Removed some old types
      mysys/mf_radix.c:
        Removed some old types
      mysys/mf_same.c:
        Removed some old types
      mysys/mf_sort.c:
        Removed some old types
      mysys/mf_soundex.c:
        Removed some old types
      mysys/mf_strip.c:
        Removed some old types
      mysys/mf_tempdir.c:
        Removed some old types
      mysys/mf_unixpath.c:
        Removed some old types
      mysys/mf_wfile.c:
        Removed some old types
      mysys/mulalloc.c:
        Removed some old types
      mysys/my_alloc.c:
        Removed some old types
        Changed some string lengths to use size_t
        Use void* as type for allocated memory area
        Removed some not needed casts
        Changed argument 'Size' to 'length' according coding guidelines
      mysys/my_chsize.c:
        Changed some buffers to be uchar* to avoid casts
      mysys/my_compress.c:
        More comments
        Removed some old types
        Changed string lengths to use size_t
        Changed arguments to my_uncompress() to make them easier to understand
        Changed packfrm()/unpackfrm() to not be depending on uint size (portability fix)
        Changed type of 'pack_data' argument to packfrm() to avoid casts.
      mysys/my_conio.c:
        Changed some string lengths to use size_t
      mysys/my_create.c:
        Removed some old types
      mysys/my_div.c:
        Removed some old types
      mysys/my_error.c:
        Removed some old types
      mysys/my_fopen.c:
        Removed some old types
      mysys/my_fstream.c:
        Removed some old types
        Changed some string lengths to use size_t
        writen -> written
      mysys/my_getopt.c:
        Removed some old types
      mysys/my_getwd.c:
        Removed some old types
        More comments
      mysys/my_init.c:
        Removed some old types
      mysys/my_largepage.c:
        Removed some old types
        Changed some string lengths to use size_t
      mysys/my_lib.c:
        Removed some old types
      mysys/my_lockmem.c:
        Removed some old types
      mysys/my_malloc.c:
        Removed some old types
        Changed malloc(), free() and related functions to use void *
        Changed all functions to use size_t
      mysys/my_memmem.c:
        Indentation cleanup
      mysys/my_once.c:
        Removed some old types
        Changed malloc(), free() and related functions to use void *
      mysys/my_open.c:
        Removed some old types
      mysys/my_pread.c:
        Removed some old types
        Changed all functions to use size_t
        Added comment for how my_pread() / my_pwrite() are supposed to work.
        Removed windows specific code to restore cursor position as this causes slowdown on windows and we should not mix read() and pread() calls anyway as this is not thread safe.
        (If we ever would really need this, it should be enabled only with a flag argument)
      mysys/my_quick.c:
        Removed some old types
        Changed all functions to use size_t
      mysys/my_read.c:
        Removed some old types
        Changed all functions to use size_t
      mysys/my_realloc.c:
        Removed some old types
        Use void* as type for allocated memory area
        Changed all functions to use size_t
      mysys/my_static.c:
        Removed some old types
      mysys/my_static.h:
        Removed some old types
      mysys/my_vle.c:
        Removed some old types
      mysys/my_wincond.c:
        Removed some old types
      mysys/my_windac.c:
        Removed some old types
      mysys/my_write.c:
        Removed some old types
        Changed all functions to use size_t
      mysys/ptr_cmp.c:
        Removed some old types
        Changed all functions to use size_t
      mysys/queues.c:
        Removed some old types
      mysys/safemalloc.c:
        Removed some old types
        Changed malloc(), free() and related functions to use void *
        Changed all functions to use size_t
      mysys/string.c:
        Removed some old types
        Changed all functions to use size_t
      mysys/testhash.c:
        Removed some old types
      mysys/thr_alarm.c:
        Removed some old types
      mysys/thr_lock.c:
        Removed some old types
      mysys/tree.c:
        Removed some old types
      mysys/trie.c:
        Removed some old types
      mysys/typelib.c:
        Removed some old types
      plugin/daemon_example/daemon_example.cc:
        Removed some old types
      regex/reginit.c:
        Removed some old types
      server-tools/instance-manager/buffer.cc:
        Changed some string lengths to use size_t
        Changed buffer to be of type uchar*
      server-tools/instance-manager/buffer.h:
        Changed some string lengths to use size_t
        Changed buffer to be of type uchar*
      server-tools/instance-manager/commands.cc:
        Removed some old types
        Changed some string lengths to use size_t
        Changed buffer to be of type uchar*
      server-tools/instance-manager/instance_map.cc:
        Removed some old types
        Changed some string lengths to use size_t
        Changed buffer to be of type uchar*
      server-tools/instance-manager/instance_options.cc:
        Changed buffer to be of type uchar*
        Replaced alloc_root + strcpy() with strdup_root()
      server-tools/instance-manager/mysql_connection.cc:
        Changed buffer to be of type uchar*
      server-tools/instance-manager/options.cc:
        Removed some old types
      server-tools/instance-manager/parse.cc:
        Changed some string lengths to use size_t
      server-tools/instance-manager/parse.h:
        Removed some old types
        Changed some string lengths to use size_t
      server-tools/instance-manager/protocol.cc:
        Changed some buffers to be uchar* to avoid casts
        Changed some string lengths to use size_t
      server-tools/instance-manager/protocol.h:
        Changed some string lengths to use size_t
      server-tools/instance-manager/user_map.cc:
        Removed some old types
        Changed some string lengths to use size_t
      sql/derror.cc:
        Removed some old types
        Changed some buffers to be uchar* to avoid casts
        Changed some string lengths to use size_t
      sql/discover.cc:
        Changed in readfrm() and writefrom() the type for argument 'frmdata' to uchar** to avoid casts
        Changed some string lengths to use size_t
        Changed some buffers to be uchar* to avoid casts
      sql/event_data_objects.cc:
        Removed some old types
        Added missing casts for alloc() and sprintf()
      sql/event_db_repository.cc:
        Changed some buffers to be uchar* to avoid casts
        Added missing casts for sprintf()
      sql/event_queue.cc:
        Removed some old types
      sql/field.cc:
        Removed some old types
        Changed memory buffers to be uchar*
        Changed some string lengths to use size_t
        Removed a lot of casts
        Safety fix in Field_blob::val_decimal() to not access zero pointer
      sql/field.h:
        Removed some old types
        Changed memory buffers to be uchar* (except of store() as this would have caused too many other changes). 
        Changed some string lengths to use size_t
        Removed some not needed casts
        Changed val_xxx(xxx, new_ptr) to take const pointers
      sql/field_conv.cc:
        Removed some old types
        Added casts required because memory area pointers are now uchar*
      sql/filesort.cc:
        Initalize variable that was used unitialized in error conditions
      sql/gen_lex_hash.cc:
        Removed some old types
        Changed memory buffers to be uchar*
        Changed some string lengths to use size_t
        Removed a lot of casts
        Safety fix in Field_blob::val_decimal() to not access zero pointer
      sql/gstream.h:
        Added required cast
      sql/ha_ndbcluster.cc:
        Removed some old types
        Updated hash-get-key function arguments
        Changed some buffers to be uchar* to avoid casts
        Added required casts
        Removed some not needed casts
      sql/ha_ndbcluster.h:
        Removed some old types
      sql/ha_ndbcluster_binlog.cc:
        Removed some old types
        Changed some buffers to be uchar* to avoid casts
        Replaced sql_alloc() + memcpy() + set end 0 with sql_strmake()
        Changed some string lengths to use size_t
        Added missing casts for alloc() and sprintf()
      sql/ha_ndbcluster_binlog.h:
        Removed some old types
      sql/ha_ndbcluster_cond.cc:
        Removed some old types
        Removed some not needed casts
      sql/ha_ndbcluster_cond.h:
        Removed some old types
      sql/ha_partition.cc:
        Removed some old types
        Changed prototype for change_partition() to avoid casts
      sql/ha_partition.h:
        Removed some old types
      sql/handler.cc:
        Removed some old types
        Changed some string lengths to use size_t
      sql/handler.h:
        Removed some old types
        Changed some string lengths to use size_t
        Changed type for 'frmblob' parameter for discover() and ha_discover() to get fewer casts
      sql/hash_filo.h:
        Removed some old types
        Changed all functions to use size_t
      sql/hostname.cc:
        Removed some old types
      sql/item.cc:
        Removed some old types
        Changed some string lengths to use size_t
        Use strmake() instead of memdup() to create a null terminated string.
        Updated calls to new Field()
      sql/item.h:
        Removed some old types
        Changed malloc(), free() and related functions to use void *
        Changed some buffers to be uchar* to avoid casts
      sql/item_cmpfunc.cc:
        Removed some old types
        Changed some buffers to be uchar* to avoid casts
      sql/item_cmpfunc.h:
        Removed some old types
      sql/item_create.cc:
        Removed some old types
      sql/item_func.cc:
        Removed some old types
        Changed some buffers to be uchar* to avoid casts
        Removed some not needed casts
        Added test for failing alloc() in init_result_field()
        Remove old confusing comment
        Fixed compiler warning
      sql/item_func.h:
        Removed some old types
      sql/item_row.cc:
        Removed some old types
      sql/item_row.h:
        Removed some old types
      sql/item_strfunc.cc:
        Include zlib (needed becasue we call crc32)
        Removed some old types
      sql/item_strfunc.h:
        Removed some old types
        Changed some types to match new function prototypes
      sql/item_subselect.cc:
        Removed some old types
      sql/item_subselect.h:
        Removed some old types
      sql/item_sum.cc:
        Removed some old types
        Changed some buffers to be uchar* to avoid casts
        Removed some not needed casts
      sql/item_sum.h:
        Removed some old types
      sql/item_timefunc.cc:
        Removed some old types
        Changed some string lengths to use size_t
      sql/item_timefunc.h:
        Removed some old types
      sql/item_xmlfunc.cc:
        Changed some string lengths to use size_t
      sql/item_xmlfunc.h:
        Removed some old types
      sql/key.cc:
        Removed some old types
        Removed some not needed casts
      sql/lock.cc:
        Removed some old types
        Added some cast to my_multi_malloc() arguments for safety
      sql/log.cc:
        Removed some old types
        Changed some string lengths to use size_t
        Changed some buffers to be uchar* to avoid casts
        Changed usage of pwrite() to not assume it holds the cursor position for the file
        Made usage of my_read() safer
      sql/log_event.cc:
        Removed some old types
        Added checking of return value of malloc() in pack_info()
        Changed some buffers to be uchar* to avoid casts
        Removed some 'const' to avoid casts
        Added missing casts for alloc() and sprintf()
        Added required casts
        Removed some not needed casts
        Added some cast to my_multi_malloc() arguments for safety
      sql/log_event.h:
        Removed some old types
        Changed some buffers to be uchar* to avoid casts
      sql/log_event_old.cc:
        Changed some buffers to be uchar* to avoid casts
        Removed some not needed casts
      sql/log_event_old.h:
        Changed some buffers to be uchar* to avoid casts
      sql/mf_iocache.cc:
        Removed some old types
      sql/my_decimal.cc:
        Changed memory area to use uchar*
      sql/my_decimal.h:
        Changed memory area to use uchar*
      sql/mysql_priv.h:
        Removed some old types
        Changed malloc(), free() and related functions to use void *
        Changed some string lengths to use size_t
        Changed definition of MOD_PAD_CHAR_TO_FULL_LENGTH to avoid long overflow
        Changed some buffers to be uchar* to avoid casts
      sql/mysqld.cc:
        Removed some old types
      sql/net_serv.cc:
        Removed some old types
        Changed some string lengths to use size_t
        Changed some buffers to be uchar* to avoid casts
        Ensure that vio_read()/vio_write() return values are stored in a size_t variable
        Removed some not needed casts
      sql/opt_range.cc:
        Removed some old types
        Changed some buffers to be uchar* to avoid casts
        Removed some not needed casts
      sql/opt_range.h:
        Removed some old types
        Changed some buffers to be uchar* to avoid casts
      sql/opt_sum.cc:
        Removed some old types
        Removed some not needed casts
      sql/parse_file.cc:
        Removed some old types
        Changed some string lengths to use size_t
        Changed alloc_root + memcpy + set end 0 -> strmake_root()
      sql/parse_file.h:
        Removed some old types
      sql/partition_info.cc:
        Removed some old types
        Added missing casts for alloc()
        Changed some buffers to be uchar* to avoid casts
      sql/partition_info.h:
        Changed some buffers to be uchar* to avoid casts
      sql/protocol.cc:
        Removed some old types
        Changed some buffers to be uchar* to avoid casts
        Removed some not needed casts
      sql/protocol.h:
        Removed some old types
        Changed some buffers to be uchar* to avoid casts
        Changed some string lengths to use size_t
      sql/records.cc:
        Removed some old types
      sql/repl_failsafe.cc:
        Removed some old types
        Changed some string lengths to use size_t
        Added required casts
      sql/rpl_filter.cc:
        Removed some old types
        Updated hash-get-key function arguments
        Changed some string lengths to use size_t
      sql/rpl_filter.h:
        Changed some string lengths to use size_t
      sql/rpl_injector.h:
        Removed some old types
      sql/rpl_record.cc:
        Removed some old types
        Removed some not needed casts
        Changed some buffers to be uchar* to avoid casts
      sql/rpl_record.h:
        Removed some old types
        Changed some buffers to be uchar* to avoid casts
      sql/rpl_record_old.cc:
        Removed some old types
        Changed some buffers to be uchar* to avoid casts
        Removed some not needed casts
      sql/rpl_record_old.h:
        Removed some old types
        Changed some buffers to be uchar* to avoid cast
      sql/rpl_rli.cc:
        Removed some old types
      sql/rpl_tblmap.cc:
        Removed some old types
      sql/rpl_tblmap.h:
        Removed some old types
      sql/rpl_utility.cc:
        Removed some old types
      sql/rpl_utility.h:
        Removed some old types
        Changed type of m_size from my_size_t to ulong to reflect that m_size is the number of elements in the array, not a string/memory length
      sql/set_var.cc:
        Removed some old types
        Updated parameters to dirname_part()
      sql/set_var.h:
        Removed some old types
      sql/slave.cc:
        Removed some old types
        Changed some string lengths to use size_t
      sql/slave.h:
        Removed some old types
      sql/sp.cc:
        Removed some old types
        Added missing casts for printf()
      sql/sp.h:
        Removed some old types
        Updated hash-get-key function arguments
      sql/sp_cache.cc:
        Removed some old types
        Added missing casts for printf()
        Updated hash-get-key function arguments
      sql/sp_head.cc:
        Removed some old types
        Added missing casts for alloc() and printf()
        Added required casts
        Updated hash-get-key function arguments
      sql/sp_head.h:
        Removed some old types
      sql/sp_pcontext.cc:
        Removed some old types
      sql/sp_pcontext.h:
        Removed some old types
      sql/sql_acl.cc:
        Removed some old types
        Changed some string lengths to use size_t
        Changed some buffers to be uchar* to avoid casts
        Removed some not needed casts
        Added required casts
      sql/sql_analyse.cc:
        Changed some buffers to be uchar* to avoid casts
      sql/sql_analyse.h:
        Changed some buffers to be uchar* to avoid casts
      sql/sql_array.h:
        Removed some old types
      sql/sql_base.cc:
        Removed some old types
        Updated hash-get-key function arguments
      sql/sql_binlog.cc:
        Removed some old types
        Added missing casts for printf()
      sql/sql_cache.cc:
        Removed some old types
        Updated hash-get-key function arguments
        Removed some not needed casts
        Changed some string lengths to use size_t
      sql/sql_cache.h:
        Removed some old types
        Removed reference to not existing function cache_key()
        Updated hash-get-key function arguments
      sql/sql_class.cc:
        Removed some old types
        Updated hash-get-key function arguments
        Added missing casts for alloc()
        Updated hash-get-key function arguments
        Moved THD::max_row_length() to table.cc (as it's not depending on THD)
        Removed some not needed casts
      sql/sql_class.h:
        Removed some old types
        Changed malloc(), free() and related functions to use void *
        Removed some not needed casts
        Changed some string lengths to use size_t
        Moved max_row_length and max_row_length_blob() to table.cc, as they are not depending on THD
      sql/sql_connect.cc:
        Removed some old types
        Added required casts
      sql/sql_db.cc:
        Removed some old types
        Removed some not needed casts
        Added some cast to my_multi_malloc() arguments for safety
        Added missing casts for alloc()
      sql/sql_delete.cc:
        Removed some old types
      sql/sql_handler.cc:
        Removed some old types
        Updated hash-get-key function arguments
        Added some cast to my_multi_malloc() arguments for safety
      sql/sql_help.cc:
        Removed some old types
        Changed some buffers to be uchar* to avoid casts
        Removed some not needed casts
      sql/sql_insert.cc:
        Removed some old types
        Added missing casts for alloc() and printf()
      sql/sql_lex.cc:
        Removed some old types
      sql/sql_lex.h:
        Removed some old types
        Removed some not needed casts
      sql/sql_list.h:
        Removed some old types
        Removed some not needed casts
      sql/sql_load.cc:
        Removed some old types
        Removed compiler warning
      sql/sql_manager.cc:
        Removed some old types
      sql/sql_map.cc:
        Removed some old types
      sql/sql_map.h:
        Removed some old types
      sql/sql_olap.cc:
        Removed some old types
      sql/sql_parse.cc:
        Removed some old types
        Trivial move of code lines to make things more readable
        Changed some string lengths to use size_t
        Added missing casts for alloc()
      sql/sql_partition.cc:
        Removed some old types
        Removed compiler warnings about not used functions
        Changed some buffers to be uchar* to avoid casts
        Removed some not needed casts
      sql/sql_partition.h:
        Removed some old types
        Changed some buffers to be uchar* to avoid casts
      sql/sql_plugin.cc:
        Removed some old types
        Added missing casts for alloc()
        Updated hash-get-key function arguments
      sql/sql_prepare.cc:
        Removed some old types
        Changed some buffers to be uchar* to avoid casts
        Added missing casts for alloc() and printf()
      sql-common/client.c:
        Removed some old types
        Changed some memory areas to use uchar*
      sql-common/my_user.c:
        Changed some string lengths to use size_t
      sql-common/pack.c:
        Changed some buffers to be uchar* to avoid casts
      sql/sql_repl.cc:
        Added required casts
        Changed some buffers to be uchar* to avoid casts
        Changed some string lengths to use size_t
      sql/sql_select.cc:
        Removed some old types
        Changed some buffers to be uchar* to avoid casts
        Removed some old types
      sql/sql_select.h:
        Removed some old types
        Changed some buffers to be uchar* to avoid casts
      sql/sql_servers.cc:
        Removed some old types
        Updated hash-get-key function arguments
      sql/sql_show.cc:
        Removed some old types
        Added missing casts for alloc()
        Removed some not needed casts
      sql/sql_string.cc:
        Removed some old types
        Added required casts
      sql/sql_table.cc:
        Removed some old types
        Removed compiler warning about not used variable
        Changed some buffers to be uchar* to avoid casts
        Removed some not needed casts
      sql/sql_test.cc:
        Removed some old types
      sql/sql_trigger.cc:
        Removed some old types
        Added missing casts for alloc()
      sql/sql_udf.cc:
        Removed some old types
        Updated hash-get-key function arguments
      sql/sql_union.cc:
        Removed some old types
      sql/sql_update.cc:
        Removed some old types
        Removed some not needed casts
      sql/sql_view.cc:
        Removed some old types
      sql/sql_yacc.yy:
        Removed some old types
        Changed some string lengths to use size_t
        Added missing casts for alloc()
      sql/stacktrace.c:
        Removed some old types
      sql/stacktrace.h:
        Removed some old types
      sql/structs.h:
        Removed some old types
      sql/table.cc:
        Removed some old types
        Updated hash-get-key function arguments
        Changed some buffers to be uchar* to avoid casts
        Removed setting of LEX_STRING() arguments in declaration
        Added required casts
        More function comments
        Moved max_row_length() here from sql_class.cc/sql_class.h
      sql/table.h:
        Removed some old types
        Changed some string lengths to use size_t
      sql/thr_malloc.cc:
        Use void* as type for allocated memory area
        Changed all functions to use size_t
      sql/tzfile.h:
        Changed some buffers to be uchar* to avoid casts
      sql/tztime.cc:
        Changed some buffers to be uchar* to avoid casts
        Updated hash-get-key function arguments
        Added missing casts for alloc()
        Removed some not needed casts
      sql/uniques.cc:
        Removed some old types
        Removed some not needed casts
      sql/unireg.cc:
        Removed some old types
        Changed some buffers to be uchar* to avoid casts
        Removed some not needed casts
        Added missing casts for alloc()
      storage/archive/archive_reader.c:
        Removed some old types
      storage/archive/azio.c:
        Removed some old types
        Removed some not needed casts
      storage/archive/ha_archive.cc:
        Removed some old types
        Changed type for 'frmblob' in archive_discover() to match handler
        Updated hash-get-key function arguments
        Removed some not needed casts
      storage/archive/ha_archive.h:
        Removed some old types
      storage/blackhole/ha_blackhole.cc:
        Removed some old types
      storage/blackhole/ha_blackhole.h:
        Removed some old types
      storage/csv/ha_tina.cc:
        Removed some old types
        Updated hash-get-key function arguments
        Changed some buffers to be uchar* to avoid casts
      storage/csv/ha_tina.h:
        Removed some old types
        Removed some not needed casts
      storage/csv/transparent_file.cc:
        Removed some old types
        Changed type of 'bytes_read' to be able to detect read errors
        Fixed indentation
      storage/csv/transparent_file.h:
        Removed some old types
      storage/example/ha_example.cc:
        Removed some old types
        Updated hash-get-key function arguments
      storage/example/ha_example.h:
        Removed some old types
      storage/federated/ha_federated.cc:
        Removed some old types
        Updated hash-get-key function arguments
        Removed some not needed casts
      storage/federated/ha_federated.h:
        Removed some old types
      storage/heap/_check.c:
        Changed some buffers to be uchar* to avoid casts
      storage/heap/_rectest.c:
        Removed some old types
      storage/heap/ha_heap.cc:
        Removed some old types
      storage/heap/ha_heap.h:
        Removed some old types
      storage/heap/heapdef.h:
        Removed some old types
      storage/heap/hp_block.c:
        Removed some old types
        Changed some string lengths to use size_t
      storage/heap/hp_clear.c:
        Removed some old types
      storage/heap/hp_close.c:
        Removed some old types
      storage/heap/hp_create.c:
        Removed some old types
      storage/heap/hp_delete.c:
        Removed some old types
      storage/heap/hp_hash.c:
        Removed some old types
      storage/heap/hp_info.c:
        Removed some old types
      storage/heap/hp_open.c:
        Removed some old types
      storage/heap/hp_rfirst.c:
        Removed some old types
      storage/heap/hp_rkey.c:
        Removed some old types
      storage/heap/hp_rlast.c:
        Removed some old types
      storage/heap/hp_rnext.c:
        Removed some old types
      storage/heap/hp_rprev.c:
        Removed some old types
      storage/heap/hp_rrnd.c:
        Removed some old types
      storage/heap/hp_rsame.c:
        Removed some old types
      storage/heap/hp_scan.c:
        Removed some old types
      storage/heap/hp_test1.c:
        Removed some old types
      storage/heap/hp_test2.c:
        Removed some old types
      storage/heap/hp_update.c:
        Removed some old types
      storage/heap/hp_write.c:
        Removed some old types
        Changed some string lengths to use size_t
      storage/innobase/handler/ha_innodb.cc:
        Removed some old types
        Updated hash-get-key function arguments
        Added missing casts for alloc() and printf()
        Removed some not needed casts
      storage/innobase/handler/ha_innodb.h:
        Removed some old types
      storage/myisam/ft_boolean_search.c:
        Removed some old types
      storage/myisam/ft_nlq_search.c:
        Removed some old types
      storage/myisam/ft_parser.c:
        Removed some old types
        Changed some buffers to be uchar* to avoid casts
      storage/myisam/ft_static.c:
        Removed some old types
      storage/myisam/ft_stopwords.c:
        Removed some old types
      storage/myisam/ft_update.c:
        Removed some old types
        Changed some buffers to be uchar* to avoid casts
      storage/myisam/ftdefs.h:
        Removed some old types
        Changed some buffers to be uchar* to avoid casts
      storage/myisam/fulltext.h:
        Removed some old types
      storage/myisam/ha_myisam.cc:
        Removed some old types
      storage/myisam/ha_myisam.h:
        Removed some old types
      storage/myisam/mi_cache.c:
        Removed some old types
        Changed some buffers to be uchar* to avoid casts
      storage/myisam/mi_check.c:
        Removed some old types
      storage/myisam/mi_checksum.c:
        Removed some old types
      storage/myisam/mi_close.c:
        Removed some old types
      storage/myisam/mi_create.c:
        Removed some old types
      storage/myisam/mi_delete.c:
        Removed some old types
      storage/myisam/mi_delete_all.c:
        Removed some old types
      storage/myisam/mi_dynrec.c:
        Removed some old types
      storage/myisam/mi_extra.c:
        Removed some old types
      storage/myisam/mi_key.c:
        Removed some old types
      storage/myisam/mi_locking.c:
        Removed some old types
      storage/myisam/mi_log.c:
        Removed some old types
      storage/myisam/mi_open.c:
        Removed some old types
        Removed some not needed casts
        Check argument of my_write()/my_pwrite() in functions returning int
        Added casting of string lengths to size_t
      storage/myisam/mi_packrec.c:
        Removed some old types
        Changed some buffers to be uchar* to avoid casts
      storage/myisam/mi_page.c:
        Removed some old types
      storage/myisam/mi_preload.c:
        Removed some old types
      storage/myisam/mi_range.c:
        Removed some old types
      storage/myisam/mi_rfirst.c:
        Removed some old types
      storage/myisam/mi_rkey.c:
        Removed some old types
      storage/myisam/mi_rlast.c:
        Removed some old types
      storage/myisam/mi_rnext.c:
        Removed some old types
      storage/myisam/mi_rnext_same.c:
        Removed some old types
      storage/myisam/mi_rprev.c:
        Removed some old types
      storage/myisam/mi_rrnd.c:
        Removed some old types
      storage/myisam/mi_rsame.c:
        Removed some old types
      storage/myisam/mi_rsamepos.c:
        Removed some old types
      storage/myisam/mi_scan.c:
        Removed some old types
      storage/myisam/mi_search.c:
        Removed some old types
      storage/myisam/mi_static.c:
        Removed some old types
      storage/myisam/mi_statrec.c:
        Removed some old types
      storage/myisam/mi_test1.c:
        Removed some old types
      storage/myisam/mi_test2.c:
        Removed some old types
      storage/myisam/mi_test3.c:
        Removed some old types
      storage/myisam/mi_unique.c:
        Removed some old types
      storage/myisam/mi_update.c:
        Removed some old types
      storage/myisam/mi_write.c:
        Removed some old types
      storage/myisam/myisam_ftdump.c:
        Removed some old types
      storage/myisam/myisamchk.c:
        Removed some old types
      storage/myisam/myisamdef.h:
        Removed some old types
      storage/myisam/myisamlog.c:
        Removed some old types
        Indentation fix
      storage/myisam/myisampack.c:
        Removed some old types
      storage/myisam/rt_index.c:
        Removed some old types
      storage/myisam/rt_split.c:
        Removed some old types
      storage/myisam/sort.c:
        Removed some old types
      storage/myisam/sp_defs.h:
        Removed some old types
      storage/myisam/sp_key.c:
        Removed some old types
      storage/myisammrg/ha_myisammrg.cc:
        Removed some old types
      storage/myisammrg/ha_myisammrg.h:
        Removed some old types
      storage/myisammrg/myrg_close.c:
        Removed some old types
      storage/myisammrg/myrg_def.h:
        Removed some old types
      storage/myisammrg/myrg_delete.c:
        Removed some old types
      storage/myisammrg/myrg_open.c:
        Removed some old types
        Updated parameters to dirname_part()
      storage/myisammrg/myrg_queue.c:
        Removed some old types
      storage/myisammrg/myrg_rfirst.c:
        Removed some old types
      storage/myisammrg/myrg_rkey.c:
        Removed some old types
      storage/myisammrg/myrg_rlast.c:
        Removed some old types
      storage/myisammrg/myrg_rnext.c:
        Removed some old types
      storage/myisammrg/myrg_rnext_same.c:
        Removed some old types
      storage/myisammrg/myrg_rprev.c:
        Removed some old types
      storage/myisammrg/myrg_rrnd.c:
        Removed some old types
      storage/myisammrg/myrg_rsame.c:
        Removed some old types
      storage/myisammrg/myrg_update.c:
        Removed some old types
      storage/myisammrg/myrg_write.c:
        Removed some old types
      storage/ndb/include/util/ndb_opts.h:
        Removed some old types
      storage/ndb/src/cw/cpcd/main.cpp:
        Removed some old types
      storage/ndb/src/kernel/vm/Configuration.cpp:
        Removed some old types
      storage/ndb/src/mgmclient/main.cpp:
        Removed some old types
      storage/ndb/src/mgmsrv/InitConfigFileParser.cpp:
        Removed some old types
        Removed old disabled code
      storage/ndb/src/mgmsrv/main.cpp:
        Removed some old types
      storage/ndb/src/ndbapi/NdbBlob.cpp:
        Removed some old types
      storage/ndb/src/ndbapi/NdbOperationDefine.cpp:
        Removed not used variable
      storage/ndb/src/ndbapi/NdbOperationInt.cpp:
        Added required casts
      storage/ndb/src/ndbapi/NdbScanOperation.cpp:
        Added required casts
      storage/ndb/tools/delete_all.cpp:
        Removed some old types
      storage/ndb/tools/desc.cpp:
        Removed some old types
      storage/ndb/tools/drop_index.cpp:
        Removed some old types
      storage/ndb/tools/drop_tab.cpp:
        Removed some old types
      storage/ndb/tools/listTables.cpp:
        Removed some old types
      storage/ndb/tools/ndb_config.cpp:
        Removed some old types
      storage/ndb/tools/restore/consumer_restore.cpp:
        Changed some buffers to be uchar* to avoid casts with new defintion of packfrm()
      storage/ndb/tools/restore/restore_main.cpp:
        Removed some old types
      storage/ndb/tools/select_all.cpp:
        Removed some old types
      storage/ndb/tools/select_count.cpp:
        Removed some old types
      storage/ndb/tools/waiter.cpp:
        Removed some old types
      strings/bchange.c:
        Changed function to use uchar * and size_t
      strings/bcmp.c:
        Changed function to use uchar * and size_t
      strings/bmove512.c:
        Changed function to use uchar * and size_t
      strings/bmove_upp.c:
        Changed function to use uchar * and size_t
      strings/ctype-big5.c:
        Changed functions to use size_t
        Changed character length functions to return uint
      strings/ctype-bin.c:
        Changed functions to use size_t
      strings/ctype-cp932.c:
        Changed functions to use size_t
        Changed character length functions to return uint
      strings/ctype-czech.c:
        Fixed indentation
        Changed functions to use size_t
      strings/ctype-euc_kr.c:
        Changed functions to use size_t
        Changed character length functions to return uint
      strings/ctype-eucjpms.c:
        Changed functions to use size_t
        Changed character length functions to return uint
        unsigned char -> uchar
      strings/ctype-gb2312.c:
        Changed functions to use size_t
        Changed character length functions to return uint
      strings/ctype-gbk.c:
        Changed functions to use size_t
        Changed character length functions to return uint
      strings/ctype-latin1.c:
        Changed functions to use size_t
        Changed character length functions to return uint
        unsigned char -> uchar
      strings/ctype-mb.c:
        Changed functions to use size_t
        Changed character length functions to return uint
      strings/ctype-simple.c:
        Changed functions to use size_t
        Simpler loops for caseup/casedown
        unsigned int -> uint
        unsigned char -> uchar
      strings/ctype-sjis.c:
        Changed functions to use size_t
        Changed character length functions to return uint
      strings/ctype-tis620.c:
        Changed functions to use size_t
        Changed character length functions to return uint
        unsigned char -> uchar
      strings/ctype-uca.c:
        Changed functions to use size_t
        unsigned char -> uchar
      strings/ctype-ucs2.c:
        Moved inclusion of stdarg.h to other includes
        usigned char -> uchar
        Changed functions to use size_t
        Changed character length functions to return uint
      strings/ctype-ujis.c:
        Changed functions to use size_t
        Changed character length functions to return uint
        unsigned char -> uchar
      strings/ctype-utf8.c:
        Changed functions to use size_t
        unsigned char -> uchar
        Indentation fixes
      strings/ctype-win1250ch.c:
        Indentation fixes
        Changed functions to use size_t
      strings/ctype.c:
        Changed functions to use size_t
      strings/decimal.c:
        Changed type for memory argument to uchar *
      strings/do_ctype.c:
        Indentation fixes
      strings/my_strtoll10.c:
        unsigned char -> uchar
      strings/my_vsnprintf.c:
        Changed functions to use size_t
      strings/r_strinstr.c:
        Removed some old types
        Changed functions to use size_t
      strings/str_test.c:
        Removed some old types
      strings/strappend.c:
        Changed functions to use size_t
      strings/strcont.c:
        Removed some old types
      strings/strfill.c:
        Removed some old types
      strings/strinstr.c:
        Changed functions to use size_t
      strings/strlen.c:
        Changed functions to use size_t
      strings/strmake.c:
        Changed functions to use size_t
      strings/strnlen.c:
        Changed functions to use size_t
      strings/strnmov.c:
        Changed functions to use size_t
      strings/strto.c:
        unsigned char -> uchar
      strings/strtod.c:
        Changed functions to use size_t
      strings/strxnmov.c:
        Changed functions to use size_t
      strings/xml.c:
        Changed functions to use size_t
        Indentation fixes
      tests/mysql_client_test.c:
        Removed some old types
      tests/thread_test.c:
        Removed some old types
      vio/test-ssl.c:
        Removed some old types
      vio/test-sslclient.c:
        Removed some old types
      vio/test-sslserver.c:
        Removed some old types
      vio/vio.c:
        Removed some old types
      vio/vio_priv.h:
        Removed some old types
        Changed vio_read()/vio_write() to work with size_t
      vio/viosocket.c:
        Changed vio_read()/vio_write() to work with size_t
        Indentation fixes
      vio/viossl.c:
        Changed vio_read()/vio_write() to work with size_t
        Indentation fixes
      vio/viosslfactories.c:
        Removed some old types
      vio/viotest-ssl.c:
        Removed some old types
      win/README:
        More explanations
      f252f924
  17. 13 Apr, 2007 1 commit
    • unknown's avatar
      wl#2936 - fixing problems · bf2aaad9
      unknown authored
      include/mysql/plugin.h:
        warning. no int/realsize
      mysys/my_getopt.c:
        combination of prefixes (e.g. --loose-skip-) didn't work
      sql/event_queue.cc:
        warning
      sql/handler.cc:
        assert
      sql/handler.h:
        comment
      sql/item_create.cc:
        warnings
      sql/log.cc:
        warnings
      sql/mysqld.cc:
        wl#2936 - fixing problems (memory leak in load_defaults,
        garbage in opt_[slow_]logname
      sql/partition_element.h:
        warnings
      sql/rpl_utility.h:
        warnings
      sql/set_var.cc:
        comment
      sql/set_var.h:
        warnings
      sql/sql_class.cc:
        warnings
      sql/sql_parse.cc:
        warnings
      sql/sql_plugin.cc:
        wl#2936 - fixing problems: portability, coding style,
        reporting of spurious errors, crashes, incorrect help output
      storage/example/ha_example.cc:
        comment
      storage/innobase/handler/ha_innodb.cc:
        wl#2936 - fixing problems (crash)
      bf2aaad9
  18. 26 Feb, 2007 1 commit
    • unknown's avatar
      BUG#26634 (Valgrind failure in tree: memory loss for memory allocated in rpl_utility.h): · 236bb807
      unknown authored
      Adding code to release allocated memory when tables_to_lock list is
      cleared.
      
      
      sql/log_event.cc:
        Using RPL_TABLE_LIST instead of TABLE_LIST for tables_to_lock.
      sql/rpl_rli.cc:
        Moving st_relay_log_info::clear_tables_to_lock() into rpl_rli.cc.
        Adding code to release memory allocated for saved table definition.
      sql/rpl_rli.h:
        Moving st_relay_log_info::clear_tables_to_lock() into rpl_rli.cc.
        Using RPL_TABLE_LIST instead of TABLE_LIST for tables_to_lock.
      sql/rpl_utility.h:
        Adding forward declarations.
        Adding boolean to tell if tabledef is valid.
      236bb807
  19. 26 Jan, 2007 1 commit
    • unknown's avatar
      BUG#19033 (RBR: slave does not handle schema changes correctly): · 8a8bb772
      unknown authored
      Since checking table compatibility before locking the table, there were
      potential that a table could be locked that did not have a definition
      that was compatible with the table on the slave.
      
      This patch adds a check just after the table was locked to ensure that
      the table is (still) compatible with the table on the slave.
      
      
      sql/log.cc:
        Moving placement new operators to slave.h since they are used in
        several places in the replication code.
        Removing some compile warnings.
      sql/log_event.cc:
        Moving code to check table compatibility to after tables are locked for
        writing.
      sql/log_event.h:
        Doxygenifying comments.
        Copying error codes to Rows_log_event hierarchy since they are
        now used there as well.
      sql/rpl_utility.h:
        Doxygenifying some comments.
        Changing class table_def to copy the column types given to it.
        Adding structure RPL_TABLE_LIST as a subclass of TABLE_LIST to represent
        lists of tables for the slave.
      sql/slave.h:
        Adding placement new and delete operators since the slave uses them
        in several places.
      sql/sql_insert.cc:
        Removing a compiler warning.
      8a8bb772
  20. 31 Dec, 2006 1 commit
    • unknown's avatar
      Many files: · d73b5b8e
      unknown authored
        Removed "MySQL Finland AB & TCX DataKonsult AB" from copyright header
        Adjusted year(s) in copyright header 
        Added GPL copyright text
      my_vle.h, rpl_utility.h, my_vle.c, base64-t.c, rpl_utility.cc:
        Changed copyright header formatting some
      plugin_example.c, daemon_example.c:
        Added "Copyright (C) 2006 MySQL AB" to GPL header
      
      
      CMakeLists.txt:
        Added GPL copyright text
      client/CMakeLists.txt:
        Added GPL copyright text
      dbug/CMakeLists.txt:
        Added GPL copyright text
      extra/CMakeLists.txt:
        Added GPL copyright text
      extra/yassl/CMakeLists.txt:
        Added GPL copyright text
      extra/yassl/taocrypt/CMakeLists.txt:
        Added GPL copyright text
      libmysql/CMakeLists.txt:
        Added GPL copyright text
      libmysqld/CMakeLists.txt:
        Added GPL copyright text
      libmysqld/examples/CMakeLists.txt:
        Added GPL copyright text
      mysys/CMakeLists.txt:
        Added GPL copyright text
      regex/CMakeLists.txt:
        Added GPL copyright text
      server-tools/instance-manager/CMakeLists.txt:
        Added GPL copyright text
      sql/CMakeLists.txt:
        Added GPL copyright text
      storage/archive/CMakeLists.txt:
        Added GPL copyright text
      storage/blackhole/CMakeLists.txt:
        Added GPL copyright text
      storage/csv/CMakeLists.txt:
        Added GPL copyright text
      storage/example/CMakeLists.txt:
        Added GPL copyright text
      storage/federated/CMakeLists.txt:
        Added GPL copyright text
      storage/heap/CMakeLists.txt:
        Added GPL copyright text
      storage/innobase/CMakeLists.txt:
        Added GPL copyright text
      storage/myisam/CMakeLists.txt:
        Added GPL copyright text
      storage/myisammrg/CMakeLists.txt:
        Added GPL copyright text
      strings/CMakeLists.txt:
        Added GPL copyright text
      tests/CMakeLists.txt:
        Added GPL copyright text
      vio/CMakeLists.txt:
        Added GPL copyright text
      zlib/CMakeLists.txt:
        Added GPL copyright text
      include/my_vle.h:
        Changed copyright header formatting some
      mysys/my_vle.c:
        Changed copyright header formatting some
      plugin/daemon_example/daemon_example.c:
        Added "Copyright (C) 2006 MySQL AB" to GPL header
      plugin/fulltext/plugin_example.c:
        Added "Copyright (C) 2006 MySQL AB" to GPL header
      plugin/Makefile.am:
        Removed "MySQL Finland AB & TCX DataKonsult AB" from copyright header
        Adjusted year(s) in copyright header
      sql/authors.h:
        Removed "MySQL Finland AB & TCX DataKonsult AB" from copyright header
        Adjusted year(s) in copyright header
      sql/contributors.h:
        Removed "MySQL Finland AB & TCX DataKonsult AB" from copyright header
        Adjusted year(s) in copyright header
      sql/item_xmlfunc.cc:
        Removed "MySQL Finland AB & TCX DataKonsult AB" from copyright header
        Adjusted year(s) in copyright header
      sql/partition_element.h:
        Removed "MySQL Finland AB & TCX DataKonsult AB" from copyright header
        Adjusted year(s) in copyright header
      sql/partition_info.h:
        Removed "MySQL Finland AB & TCX DataKonsult AB" from copyright header
        Adjusted year(s) in copyright header
      sql/rpl_injector.cc:
        Removed "MySQL Finland AB & TCX DataKonsult AB" from copyright header
        Adjusted year(s) in copyright header
      sql/rpl_injector.h:
        Removed "MySQL Finland AB & TCX DataKonsult AB" from copyright header
        Adjusted year(s) in copyright header
      sql/sql_binlog.cc:
        Removed "MySQL Finland AB & TCX DataKonsult AB" from copyright header
        Adjusted year(s) in copyright header
      sql/sql_servers.h:
        Removed "MySQL Finland AB & TCX DataKonsult AB" from copyright header
        Adjusted year(s) in copyright header
      storage/Makefile.am:
        Removed "MySQL Finland AB & TCX DataKonsult AB" from copyright header
        Adjusted year(s) in copyright header
      storage/archive/Makefile.am:
        Removed "MySQL Finland AB & TCX DataKonsult AB" from copyright header
        Adjusted year(s) in copyright header
      storage/blackhole/Makefile.am:
        Removed "MySQL Finland AB & TCX DataKonsult AB" from copyright header
        Adjusted year(s) in copyright header
      storage/csv/Makefile.am:
        Removed "MySQL Finland AB & TCX DataKonsult AB" from copyright header
        Adjusted year(s) in copyright header
      storage/example/Makefile.am:
        Removed "MySQL Finland AB & TCX DataKonsult AB" from copyright header
        Adjusted year(s) in copyright header
      storage/federated/Makefile.am:
        Removed "MySQL Finland AB & TCX DataKonsult AB" from copyright header
        Adjusted year(s) in copyright header
      win/Makefile.am:
        Removed "MySQL Finland AB & TCX DataKonsult AB" from copyright header
        Adjusted year(s) in copyright header
      sql/rpl_utility.cc:
        Changed copyright header formatting some
      sql/rpl_utility.h:
        Changed copyright header formatting some
      unittest/mysys/base64-t.c:
        Changed copyright header formatting some
      include/my_uctype.h:
        Added GPL copyright text
      plugin/daemon_example/Makefile.am:
        Added GPL copyright text
      plugin/fulltext/Makefile.am:
        Added GPL copyright text
      scripts/make_win_bin_dist:
        Added GPL copyright text
      server-tools/instance-manager/user_management_commands.cc:
        Added GPL copyright text
      sql/sql_builtin.cc.in:
        Added GPL copyright text
      sql/sql_show.h:
        Added GPL copyright text
      storage/archive/archive_test.c:
        Added GPL copyright text
      storage/ndb/src/kernel/blocks/dbtup/test_varpage.cpp:
        Added GPL copyright text
      storage/ndb/src/kernel/blocks/diskpage.cpp:
        Added GPL copyright text
      storage/ndb/src/kernel/vm/Rope.cpp:
        Added GPL copyright text
      storage/ndb/src/mgmsrv/ParamInfo.hpp:
        Added GPL copyright text
      strings/uctypedump.c:
        Added GPL copyright text
      unittest/Makefile.am:
        Added GPL copyright text
      unittest/examples/Makefile.am:
        Added GPL copyright text
      unittest/examples/core-t.c:
        Added GPL copyright text
      unittest/examples/no_plan-t.c:
        Added GPL copyright text
      unittest/examples/simple-t.c:
        Added GPL copyright text
      unittest/examples/skip-t.c:
        Added GPL copyright text
      unittest/examples/skip_all-t.c:
        Added GPL copyright text
      unittest/examples/todo-t.c:
        Added GPL copyright text
      unittest/mysys/Makefile.am:
        Added GPL copyright text
      unittest/mytap/Makefile.am:
        Added GPL copyright text
      unittest/mytap/t/Makefile.am:
        Added GPL copyright text
      unittest/mytap/t/basic-t.c:
        Added GPL copyright text
      unittest/unit.pl:
        Added GPL copyright text
      win/build-vs71.bat:
        Added GPL copyright text
      win/build-vs8.bat:
        Added GPL copyright text
      win/configure.js:
        Added GPL copyright text
      d73b5b8e
  21. 27 Dec, 2006 1 commit
    • unknown's avatar
      Many files: · 92e68d49
      unknown authored
        Changed header to GPL version 2 only
      
      
      client/mysqlslap.c:
        Changed header to GPL version 2 only
      include/atomic/nolock.h:
        Changed header to GPL version 2 only
      include/atomic/rwlock.h:
        Changed header to GPL version 2 only
      include/atomic/x86-gcc.h:
        Changed header to GPL version 2 only
      include/atomic/x86-msvc.h:
        Changed header to GPL version 2 only
      include/my_atomic.h:
        Changed header to GPL version 2 only
      include/my_trie.h:
        Changed header to GPL version 2 only
      include/my_vle.h:
        Changed header to GPL version 2 only
      include/mysql/plugin.h:
        Changed header to GPL version 2 only
      mysys/my_atomic.c:
        Changed header to GPL version 2 only
      mysys/my_getncpus.c:
        Changed header to GPL version 2 only
      mysys/my_memmem.c:
        Changed header to GPL version 2 only
      mysys/my_vle.c:
        Changed header to GPL version 2 only
      mysys/trie.c:
        Changed header to GPL version 2 only
      plugin/Makefile.am:
        Changed header to GPL version 2 only
      server-tools/instance-manager/IMService.h:
        Changed header to GPL version 2 only
      server-tools/instance-manager/WindowsService.h:
        Changed header to GPL version 2 only
      server-tools/instance-manager/exit_codes.h:
        Changed header to GPL version 2 only
      server-tools/instance-manager/user_management_commands.h:
        Changed header to GPL version 2 only
      sql/authors.h:
        Changed header to GPL version 2 only
      sql/contributors.h:
        Changed header to GPL version 2 only
      sql/event_data_objects.cc:
        Changed header to GPL version 2 only
      sql/event_data_objects.h:
        Changed header to GPL version 2 only
      sql/event_db_repository.cc:
        Changed header to GPL version 2 only
      sql/event_db_repository.h:
        Changed header to GPL version 2 only
      sql/event_queue.cc:
        Changed header to GPL version 2 only
      sql/event_queue.h:
        Changed header to GPL version 2 only
      sql/event_scheduler.cc:
        Changed header to GPL version 2 only
      sql/event_scheduler.h:
        Changed header to GPL version 2 only
      sql/events.cc:
        Changed header to GPL version 2 only
      sql/events.h:
        Changed header to GPL version 2 only
      sql/ha_ndbcluster_binlog.cc:
        Changed header to GPL version 2 only
      sql/ha_ndbcluster_binlog.h:
        Changed header to GPL version 2 only
      sql/ha_ndbcluster_tables.h:
        Changed header to GPL version 2 only
      sql/ha_partition.cc:
        Changed header to GPL version 2 only
      sql/ha_partition.h:
        Changed header to GPL version 2 only
      sql/item_xmlfunc.cc:
        Changed header to GPL version 2 only
      sql/item_xmlfunc.h:
        Changed header to GPL version 2 only
      sql/log.h:
        Changed header to GPL version 2 only
      sql/partition_element.h:
        Changed header to GPL version 2 only
      sql/partition_info.cc:
        Changed header to GPL version 2 only
      sql/partition_info.h:
        Changed header to GPL version 2 only
      sql/rpl_filter.cc:
        Changed header to GPL version 2 only
      sql/rpl_filter.h:
        Changed header to GPL version 2 only
      sql/rpl_injector.cc:
        Changed header to GPL version 2 only
      sql/rpl_injector.h:
        Changed header to GPL version 2 only
      sql/rpl_mi.cc:
        Changed header to GPL version 2 only
      sql/rpl_mi.h:
        Changed header to GPL version 2 only
      sql/rpl_rli.cc:
        Changed header to GPL version 2 only
      sql/rpl_rli.h:
        Changed header to GPL version 2 only
      sql/rpl_tblmap.cc:
        Changed header to GPL version 2 only
      sql/rpl_tblmap.h:
        Changed header to GPL version 2 only
      sql/rpl_utility.cc:
        Changed header to GPL version 2 only
      sql/rpl_utility.h:
        Changed header to GPL version 2 only
      sql/sql_binlog.cc:
        Changed header to GPL version 2 only
      sql/sql_partition.cc:
        Changed header to GPL version 2 only
      sql/sql_partition.h:
        Changed header to GPL version 2 only
      sql/sql_plugin.cc:
        Changed header to GPL version 2 only
      sql/sql_plugin.h:
        Changed header to GPL version 2 only
      sql/sql_servers.cc:
        Changed header to GPL version 2 only
      sql/sql_servers.h:
        Changed header to GPL version 2 only
      sql/sql_tablespace.cc:
        Changed header to GPL version 2 only
      sql/sql_yacc.yy.bak:
        Changed header to GPL version 2 only
      storage/Makefile.am:
        Changed header to GPL version 2 only
      storage/archive/Makefile.am:
        Changed header to GPL version 2 only
      storage/blackhole/Makefile.am:
        Changed header to GPL version 2 only
      storage/csv/Makefile.am:
        Changed header to GPL version 2 only
      storage/example/Makefile.am:
        Changed header to GPL version 2 only
      storage/federated/Makefile.am:
        Changed header to GPL version 2 only
      storage/innobase/handler/Makefile.am:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/AllocNodeId.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/CreateFilegroup.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/CreateFilegroupImpl.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/CreateObj.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/DictObjOp.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/DihFragCount.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/DropFilegroup.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/DropFilegroupImpl.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/DropObj.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/Extent.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/LgmanContinueB.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/PgmanContinueB.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/RestoreContinueB.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/RestoreImpl.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/RouteOrd.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/kernel/signaldata/TsmanContinueB.hpp:
        Changed header to GPL version 2 only
      storage/ndb/include/ndbapi/NdbIndexStat.hpp:
        Changed header to GPL version 2 only
      storage/ndb/ndbapi-examples/mgmapi_logevent/mgmapi_logevent.cpp:
        Changed header to GPL version 2 only
      storage/ndb/ndbapi-examples/mgmapi_logevent_dual/mgmapi_logevent_dual.cpp:
        Changed header to GPL version 2 only
      storage/ndb/ndbapi-examples/ndbapi_async/ndbapi_async.cpp:
        Changed header to GPL version 2 only
      storage/ndb/ndbapi-examples/ndbapi_async1/ndbapi_async1.cpp:
        Changed header to GPL version 2 only
      storage/ndb/ndbapi-examples/ndbapi_event/ndbapi_event.cpp:
        Changed header to GPL version 2 only
      storage/ndb/ndbapi-examples/ndbapi_retries/ndbapi_retries.cpp:
        Changed header to GPL version 2 only
      storage/ndb/ndbapi-examples/ndbapi_scan/ndbapi_scan.cpp:
        Changed header to GPL version 2 only
      storage/ndb/ndbapi-examples/ndbapi_simple/ndbapi_simple.cpp:
        Changed header to GPL version 2 only
      storage/ndb/ndbapi-examples/ndbapi_simple_dual/ndbapi_simple_dual.cpp:
        Changed header to GPL version 2 only
      storage/ndb/ndbapi-examples/ndbapi_simple_index/ndbapi_simple_index.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/dbdih/printSysfile.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/dbtup/DbtupDiskAlloc.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/dbtup/DbtupVarAlloc.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/dbtup/Undo_buffer.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/dbtup/Undo_buffer.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/dbtup/tuppage.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/dbtup/tuppage.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/dbtux/DbtuxStat.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/diskpage.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/lgman.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/lgman.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/pgman.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/pgman.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/print_file.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/record_types.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/restore.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/restore.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/tsman.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/blocks/tsman.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/DLCFifoList.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/DLCHashTable.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/DynArr256.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/DynArr256.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/KeyTable2Ref.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/LinearPool.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/NdbdSuperPool.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/NdbdSuperPool.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/Pool.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/Pool.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/RWPool.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/RWPool.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/Rope.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/SLFifoList.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/WOPool.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/WOPool.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/bench_pool.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/ndbd_malloc_impl.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/kernel/vm/ndbd_malloc_impl.hpp:
        Changed header to GPL version 2 only
      storage/ndb/src/mgmsrv/ParamInfo.cpp:
        Changed header to GPL version 2 only
      storage/ndb/src/ndbapi/NdbIndexStat.cpp:
        Changed header to GPL version 2 only
      storage/ndb/test/ndbapi/testIndexStat.cpp:
        Changed header to GPL version 2 only
      storage/ndb/test/tools/listen.cpp:
        Changed header to GPL version 2 only
      storage/ndb/tools/restore/ndb_nodegroup_map.h:
        Changed header to GPL version 2 only
      strings/my_strchr.c:
        Changed header to GPL version 2 only
      unittest/mysys/base64-t.c:
        Changed header to GPL version 2 only
      unittest/mysys/bitmap-t.c:
        Changed header to GPL version 2 only
      unittest/mysys/my_atomic-t.c:
        Changed header to GPL version 2 only
      unittest/mytap/tap.c:
        Changed header to GPL version 2 only
      unittest/mytap/tap.h:
        Changed header to GPL version 2 only
      win/Makefile.am:
        Changed header to GPL version 2 only
      92e68d49
  22. 10 Nov, 2006 1 commit
    • unknown's avatar
      BUG#23171 (Illegal slave restart group position): · baaa102d
      unknown authored
      Second patch to fix skipping code. Moving relay and binary log 
      position changing code from do_apply_event [old exec_event()] into
      do_update_pos() and doing other changes necessary to support that.
      
      Fixing a bug that can cause deadlock if rotating binary log when committing
      a changes to a transactional table that is not inside a transaction and
      cause a rotate log.
      
      
      sql/log.cc:
        Changing condition in binlog_commit() to skip calling
        binlog_end_trans() twice to match condition in binlog_end_trans().
      sql/log_event.cc:
        Name change: apply_event_impl() -> do_apply_event()
        Name change: advance_coord_impl() -> do_update_pos()
        
        do_apply_event() now uses pointer to constant RELAY_LOG_INFO to prevent
        inadvertandly changing the position in the code. Doing this would make
        the skipping code loose track of where it is. All position changing code
        shall now be in do_update_pos().
        
        Factoring out relay and binary log position updating code from
        do_apply_event() [previously exec_event()] into do_update_pos().
        Using a safe approach to make it work: will refine the refactoring
        when the skipping code is implemented.
        
        Adding const casts where needed.
        
        Changing signature to use pointers to constant objects where needed.
      sql/rpl_rli.cc:
        Making cached_charset_compare() const to work with constant instances of RELAY_LOG_INFO.
        
        Debriding code.
      sql/rpl_rli.h:
        Making cached_charset_compare() const to work with constant instances of RELAY_LOG_INFO.
        
        Debriding code.
      sql/rpl_utility.cc:
        Using pointer to const RELAY_LOG_INFO to make it work with other code.
      sql/rpl_utility.h:
        Using pointer to const RELAY_LOG_INFO to make it work with other code.
      sql/slave.cc:
        Using pointer to const RELAY_LOG_INFO to make it work with other code.
        
        Adding const cast where necessary.
      sql/slave.h:
        Using pointer to const RELAY_LOG_INFO to make it work with other code.
      baaa102d
  23. 13 Sep, 2006 1 commit
    • unknown's avatar
      WL#3259 (RBR with more columns on slave than master): · 3936ce19
      unknown authored
      Incorporating changes from review.
      Fixing one bug that surfaced.
      
      
      mysql-test/extra/rpl_tests/rpl_row_tabledefs.test:
        Adding tests that UPDATE and DELETE does not generate an error.
      mysql-test/r/rpl_row_tabledefs_2myisam.result:
        Result change.
      mysql-test/r/rpl_row_tabledefs_3innodb.result:
        Result change.
      mysql-test/t/disabled.def:
        Enabling rpl_sp_effects (even though it gives a result mismatch currently).
      sql/field.cc:
        Using constant to denote undefined last null byte.
      sql/field.h:
        Using constant to denote undefined last null byte.
        Adding documentation.
      sql/log_event.cc:
        Not generating error for non-NULL no-DEFAULT columns when updating or deleting row.
        Better documentation and comments.
      sql/rpl_utility.cc:
        Moving documentation to header file.
      sql/rpl_utility.h:
        Documenting class and members.
      3936ce19
  24. 03 May, 2006 1 commit
    • unknown's avatar
      WL#3259 (RBR with more columns on slave than on master): · 12443de1
      unknown authored
      Extended replication to allow extra columns added last on slave
      as compared with table on master.
      
      
      mysql-test/extra/rpl_tests/rpl_row_tabledefs.test:
        Testing that replication can handle extra extra columns on slave.
      mysql-test/r/rpl_row_tabledefs.result:
        Result file change
      sql/Makefile.am:
        Adding new files.
      sql/field.cc:
        Implementing missing Field_bit::set_default()
      sql/field.h:
        Implementing missing Field_bit::set_default()
      sql/log_event.cc:
        Extending unpack_row() and replace_record() to handle the case when there are more columns
        on the slave than on the master. Especially handle BIT columns correctly.
        Using newly introduced table_def class to perform comparison.
      sql/log_event.h:
        Adding field to table_map_log_event. Changing prototype for do_prepare_row().
      sql/mysql_priv.h:
        Adding include guards
      mysql-test/t/rpl_row_tabledefs.test:
        New BitKeeper file ``mysql-test/t/rpl_row_tabledefs.test''
      sql/rpl_utility.cc:
        New BitKeeper file ``sql/rpl_utility.cc''
      sql/rpl_utility.h:
        New BitKeeper file ``sql/rpl_utility.h''
      12443de1