1. 19 Dec, 2003 21 commits
    • unknown's avatar
      Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-5.0 · e622f6fb
      unknown authored
      into mysql.com:/home/mysql_src/mysql-5.0-new-binlog-format
      
      
      sql/ha_innodb.cc:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/sql_class.cc:
        Auto merged
      sql/sql_class.h:
        Auto merged
      e622f6fb
    • unknown's avatar
      Now merge is done. · bc3cbfbc
      unknown authored
      For previous commit I had run only rpl* tests, here the other ones had a 
      few surprises. Latest status:
      - all tests pass
      - all replication tests pass with Valgrind
      This is the final-final commit & push.
      Doc remains.
      
      
      client/mysqlbinlog.cc:
        Making remote mysqlbinlog work with the new format of 5.0.0, and still be 
        able to talk to older servers.
        This is a quickfix, but now mysqlbinlog.test passes (mysqlbinlog seems to
        work in Valgrind, too).
      mysql-test/r/drop_temp_table.result:
        result update
      mysql-test/r/insert_select.result:
        result update
      mysql-test/r/mix_innodb_myisam_binlog.result:
        result update
      mysql-test/r/mysqlbinlog.result:
        result update
      mysql-test/t/mix_innodb_myisam_binlog.test:
        position update
      mysql-test/t/mysqlbinlog.test:
        position update
      sql/log_event.cc:
        a comment (noticed the problem by watching the results of
        mix_innodb_myisam_binlog.test)
      bc3cbfbc
    • unknown's avatar
      Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-5.0 · 5084b6b7
      unknown authored
      into mysql.com:/home/mysql_src/mysql-5.0-new-binlog-format
      
      
      include/my_sys.h:
        Auto merged
      mysql-test/r/rpl_max_relay_size.result:
        Auto merged
      mysql-test/r/rpl_rotate_logs.result:
        Auto merged
      mysql-test/r/rpl_trunc_binlog.result:
        Auto merged
      mysql-test/t/rpl_log_pos.test:
        Auto merged
      mysql-test/t/rpl_max_relay_size.test:
        Auto merged
      mysql-test/t/rpl_rotate_logs.test:
        Auto merged
      mysql-test/t/rpl_trunc_binlog.test:
        Auto merged
      sql/ha_innodb.cc:
        Auto merged
      sql/log.cc:
        Auto merged
      sql/log_event.cc:
        Auto merged
      sql/log_event.h:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/mysqld.cc:
        Auto merged
      sql/slave.cc:
        Auto merged
      sql/sql_class.cc:
        Auto merged
      sql/sql_class.h:
        Auto merged
      sql/sql_repl.cc:
        Auto merged
      5084b6b7
    • unknown's avatar
      Merge mysql.com:/home/psergey/mysql-5.0-latest-pull · c0d9d437
      unknown authored
      into mysql.com:/dbdata/psergey/mysql-5.0-imerge-unique
      
      
      BitKeeper/etc/logging_ok:
        auto-union
      include/my_global.h:
        Auto merged
      sql/filesort.cc:
        Auto merged
      sql/ha_innodb.cc:
        Auto merged
      sql/handler.h:
        Auto merged
      sql/item_create.cc:
        Auto merged
      sql/item_func.cc:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/opt_range.cc:
        Auto merged
      sql/records.cc:
        Auto merged
      sql/sql_class.cc:
        Auto merged
      sql/sql_class.h:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      sql/sql_union.cc:
        Auto merged
      sql/sql_update.cc:
        Auto merged
      sql/uniques.cc:
        Auto merged
      c0d9d437
    • unknown's avatar
      28ad1273
    • unknown's avatar
      This is the final commit for Worklog tasks: · 62554f81
      unknown authored
         * A more dynamic binlog format which allows small changes (1064)
         * Log session variables in Query_log_event (1063)
      It contains a few bugfixes (which I made when running the testsuite).
      I carefully updated the results of the testsuite (i.e. I checked for every one,
      if the difference between .reject and .result could be explained).
      Apparently mysql-test-run --manager is broken in 4.1 and 5.0 currently,
      so I could neither run the few tests which require --manager, nor check
      that they pass nor modify their .result. But for builds, we don't run
      with --manager.
      Apart from --manager, the full testsuite passes, with Valgrind too (no errors).
      I'm going to push in the next minutes. Remains: update the manual.
      Note: by chance I saw that (in 4.1, in 5.0) rpl_get_lock fails when run alone;
      this is normal at it makes assumptions on thread ids. I will fix this one day
      in 4.1.
      
      
      mysql-test/r/rpl000015.result:
        result update
      mysql-test/r/rpl_change_master.result:
        result update
      mysql-test/r/rpl_error_ignored_table.result:
        result update
      mysql-test/r/rpl_flush_log_loop.result:
        result update
      mysql-test/r/rpl_flush_tables.result:
        result update
      mysql-test/r/rpl_loaddata.result:
        result update
      mysql-test/r/rpl_loaddata_rule_m.result:
        result update
      mysql-test/r/rpl_loaddata_rule_s.result:
        result update
      mysql-test/r/rpl_log.result:
        result update
      mysql-test/r/rpl_log_pos.result:
        result update
      mysql-test/r/rpl_max_relay_size.result:
        result update
      mysql-test/r/rpl_relayrotate.result:
        result update
      mysql-test/r/rpl_replicate_do.result:
        result update
      mysql-test/r/rpl_reset_slave.result:
        result update
      mysql-test/r/rpl_rotate_logs.result:
        result update
      mysql-test/r/rpl_session_var.result:
        result update
      mysql-test/r/rpl_temporary.result:
        result update
      mysql-test/r/rpl_trunc_binlog.result:
        result update
      mysql-test/r/rpl_until.result:
        result update
      mysql-test/r/rpl_user_variables.result:
        result update
      mysql-test/t/rpl000010-slave.opt:
        need to wait 2 events, because now we receive a Format_desc on top of the Rotate,
        when replication starts.
      mysql-test/t/rpl000015.test:
        relay log information is not repeatable in general (if a reconnection
        happens because --sleep=10 for example), so we hide these columns.
      mysql-test/t/rpl_change_master.test:
        relay log information is not repeatable in general (if a reconnection
        happens because --sleep=10 for example), so we hide these columns.
      mysql-test/t/rpl_empty_master_crash.test:
        relay log information is not repeatable in general (if a reconnection
        happens because --sleep=10 for example), so we hide these columns.
      mysql-test/t/rpl_error_ignored_table.test:
        relay log information is not repeatable in general (if a reconnection
        happens because --sleep=10 for example), so we hide these columns.
      mysql-test/t/rpl_flush_log_loop.test:
        relay log information is not repeatable in general (if a reconnection
        happens because --sleep=10 for example), so we hide these columns.
      mysql-test/t/rpl_loaddata.test:
        position update
      mysql-test/t/rpl_loaddata_rule_m.test:
        position update
      mysql-test/t/rpl_loaddata_rule_s.test:
        position update
      mysql-test/t/rpl_log.test:
        position update
      mysql-test/t/rpl_log_pos.test:
        position update
      mysql-test/t/rpl_max_relay_size.test:
        relay log information is not repeatable in general (if a reconnection
        happens because --sleep=10 for example), so we hide these columns.
      mysql-test/t/rpl_openssl.test:
        relay log information is not repeatable in general (if a reconnection
        happens because --sleep=10 for example), so we hide these columns.
      mysql-test/t/rpl_redirect.test:
        relay log information is not repeatable in general (if a reconnection
        happens because --sleep=10 for example), so we hide these columns.
      mysql-test/t/rpl_relayrotate-slave.opt:
        better options for this test
      mysql-test/t/rpl_relayrotate.test:
        using max() is better for debugging (it shows at which place the slave
        SQL thread resumed)
      mysql-test/t/rpl_replicate_do.test:
        relay log information is not repeatable in general (if a reconnection
        happens because --sleep=10 for example), so we hide these columns.
      mysql-test/t/rpl_reset_slave.test:
        relay log information is not repeatable in general (if a reconnection
        happens because --sleep=10 for example), so we hide these columns.
      mysql-test/t/rpl_rotate_logs.test:
        relay log information is not repeatable in general (if a reconnection
        happens because --sleep=10 for example), so we hide these columns.
      mysql-test/t/rpl_session_var.test:
        100 because password() is longer than 10 chars
      mysql-test/t/rpl_trunc_binlog.test:
        relay log information is not repeatable in general (if a reconnection
        happens because --sleep=10 for example), so we hide these columns.
      mysql-test/t/rpl_until.test:
        position update
      mysql-test/t/rpl_user_variables.test:
        position update
      sql/log.cc:
        Ensure that the Format_desc propagated on next relay logs does not trigger
        undue actions (like incrementing some positions or clearing some files).
      sql/log_event.cc:
        * When the slave SQL thread finds a Rotate/Format_desc/Stop in the middle of
        a transaction (then these were written by the slave itself to its relay log),
        it should not increment rli->group* variables, but only rli->event* ones.
        * When the slave SQL thread finds a Format_desc not to be ignored (not
        the same server id as the slave's), if it has log_pos==0 it must not trigger
        "unfinished transaction in master's binlog" (log_pos==0 is always a marker
        in the relay log to mean "this event was not at this place in the master's
        binlog": it's for fake Rotate events, and for Format_description events which the master had
        to send us for replication to start).
        * In the Query_log_event on disk, catalog is now terminated by '\0'.
        * thd->catalog must be set to 0 when some exec_event() terminate (otherwise
        double free).
      sql/slave.cc:
        * Fixes for a few bugs when ignoring events in the slave SQL thread:
          - do not decrement rli->slave_skip_counter if the event is an event
          related to the binlog or relay log itself (FORMAT_DESCRIPTION,
          ROTATE, STOP) because these events should never be skipped (or the slave
          will be confused). Usually the user wants to skip a query, not a Rotate... 
          - when we (re)connect to the master, we must free description_event_for_queue
          (otherwise memory leak when we reconnect). 
        * Changed a bit the code where we change description_event_for_queue,
        to make it look "safer".
        * Moved 'created=0' to log.cc where it is safer.
        * When the slave SQL thread finds a Rotate/Format_desc/Stop in the middle of
        a transaction (then these were written by the slave itself to its relay log),
        it should not increment rli->group* variables, but only rli->event* ones.
      sql/sql_class.h:
        a warning comment
      sql/sql_repl.cc:
        A mistake: I had passed a char* instead of char**
      62554f81
    • unknown's avatar
      Post merge fix. · b41e6294
      unknown authored
      b41e6294
    • unknown's avatar
      Merging lex-pointer change from 4.1 to 5.0. · 24e886a3
      unknown authored
      
      libmysqld/lib_sql.cc:
        Auto merged
      sql/filesort.cc:
        Auto merged
      sql/ha_innodb.cc:
        Auto merged
      sql/item_func.cc:
        Auto merged
      sql/item_subselect.cc:
        Auto merged
      sql/item_sum.cc:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/protocol.cc:
        Auto merged
      sql/slave.cc:
        Auto merged
      sql/sql_cache.cc:
        Auto merged
      sql/sql_delete.cc:
        Auto merged
      sql/sql_error.cc:
        Auto merged
      sql/sql_insert.cc:
        Auto merged
      sql/sql_lex.h:
        Auto merged
      sql/sql_union.cc:
        Auto merged
      sql/sql_update.cc:
        Auto merged
      24e886a3
    • unknown's avatar
      Post-merge fixes. · bc3b221b
      unknown authored
      bc3b221b
    • unknown's avatar
      THD::lex now points to THD::main_lex like in 5.0 · 8d987f9e
      unknown authored
      All tests pass (client_test included)
      
      
      libmysqld/lib_sql.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/filesort.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/ha_innodb.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/ha_myisam.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/item.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/item_cmpfunc.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/item_create.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/item_func.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/item_subselect.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/item_sum.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/mysql_priv.h:
        THD::lex now points to THD::main_lex like in 5.0
      sql/mysqld.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/protocol.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/repl_failsafe.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/slave.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/sql_acl.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/sql_base.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/sql_cache.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/sql_class.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/sql_class.h:
        THD::lex now points to THD::main_lex like in 5.0
      sql/sql_delete.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/sql_error.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/sql_insert.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/sql_lex.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/sql_lex.h:
        THD::lex now points to THD::main_lex like in 5.0
      sql/sql_parse.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/sql_prepare.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/sql_repl.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/sql_select.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/sql_table.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/sql_union.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/sql_update.cc:
        THD::lex now points to THD::main_lex like in 5.0
      sql/sql_yacc.yy:
        THD::lex now points to THD::main_lex like in 5.0
      8d987f9e
    • unknown's avatar
      Merge 4.1 to 5.0. · 4cd90227
      unknown authored
      
      BitKeeper/etc/logging_ok:
        auto-union
      client/mysql.cc:
        Auto merged
      configure.in:
        Auto merged
      client/mysqltest.c:
        Auto merged
      include/my_global.h:
        Auto merged
      include/my_pthread.h:
        Auto merged
      include/mysql_com.h:
        Auto merged
      libmysql/libmysql.c:
        Auto merged
      libmysqld/lib_sql.cc:
        Auto merged
      myisam/mi_check.c:
        Auto merged
      mysql-test/r/insert.result:
        Auto merged
      mysql-test/r/join_outer.result:
        Auto merged
      mysql-test/r/multi_update.result:
        Auto merged
      mysql-test/r/query_cache.result:
        Auto merged
      mysql-test/r/symlink.result:
        Auto merged
      mysql-test/t/func_time.test:
        Auto merged
      mysql-test/t/insert.test:
        Auto merged
      mysql-test/t/multi_update.test:
        Auto merged
      mysql-test/t/query_cache.test:
        Auto merged
      sql/ha_innodb.cc:
        Auto merged
      sql/item.cc:
        Auto merged
      sql/item.h:
        Auto merged
      sql/item_cmpfunc.cc:
        Auto merged
      sql/item_func.cc:
        Auto merged
      sql/item_func.h:
        Auto merged
      sql/item_subselect.cc:
        Auto merged
      sql/item_sum.cc:
        Auto merged
      sql/item_sum.h:
        Auto merged
      sql/item_timefunc.cc:
        Auto merged
      sql/lex.h:
        Auto merged
      sql/log.cc:
        Auto merged
      sql/log_event.cc:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/mysqld.cc:
        Auto merged
      sql/opt_range.cc:
        Auto merged
      sql/records.cc:
        Auto merged
      sql/repl_failsafe.cc:
        Auto merged
      sql/set_var.cc:
        Auto merged
      sql/slave.cc:
        Auto merged
      sql/sql_acl.h:
        Auto merged
      sql/sql_base.cc:
        Auto merged
      sql/sql_cache.cc:
        Auto merged
      sql/sql_class.h:
        Auto merged
      sql/sql_db.cc:
        Auto merged
      sql/sql_delete.cc:
        Auto merged
      sql/sql_insert.cc:
        Auto merged
      sql/sql_load.cc:
        Auto merged
      sql/sql_prepare.cc:
        Auto merged
      sql/sql_rename.cc:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      sql/sql_show.cc:
        Auto merged
      sql/sql_update.cc:
        Auto merged
      sql/sql_yacc.yy:
        Auto merged
      sql/table.h:
        Auto merged
      sql/share/czech/errmsg.txt:
        Auto merged
      sql/share/romanian/errmsg.txt:
        Auto merged
      4cd90227
    • unknown's avatar
      Implementation of SUM(DISTINCT), tests cases · 58a52a2a
      unknown authored
      
      sql/filesort.cc:
        Snippet of filesort() code moved to function reuse_freed_buff() - 
        change buffpek pointers to use buff from freed BUFFPEK
        Used in filesort() and merge_walk().
      sql/item_sum.cc:
        Implementation of Item_sum_sum_distinct - SUM(DISTINCT) item, 
        which uses Unique to resolve duplicates
      sql/item_sum.h:
        New sum Item added - Item_sum_sum_distinct - for SUM(DISTINCT) function
      sql/sql_class.h:
        added walk() and reset() methods to Unique, used in Item_sum_sum_distinct.
      sql/sql_sort.h:
        declaration for reuse_freed_buff() to be able to use it in uniques.cc
      sql/sql_yacc.yy:
        parser extended to handle MIN(DISTICNT), MAX(DISTINCT), SUM(DISTINCT)
      sql/uniques.cc:
        Implementation for Unique::reset(), Unique::walk() as well as for merge_walk() 
        algorithm.
      58a52a2a
    • unknown's avatar
      Merge abarkov@bk-internal.mysql.com:/home/bk/mysql-4.1 · bfe77e33
      unknown authored
      into bar.intranet.mysql.r18.ru:/usr/home/bar/mysql-4.1
      
      
      BitKeeper/etc/logging_ok:
        auto-union
      sql/sql_db.cc:
        Auto merged
      bfe77e33
    • unknown's avatar
      after merge fixes · 778a9029
      unknown authored
      778a9029
    • unknown's avatar
      Fix for Bug#2151: · ebf43374
      unknown authored
      "USE db"  affected the character set of further CREATE DATABASEs,
      which should have not happened.
      
      
      mysys/charset2html.c:
        It's earier to operate hex values when editing charset configuration file
      BitKeeper/etc/logging_ok:
        Logging to logging@openlogging.org accepted
      ebf43374
    • unknown's avatar
      merge with 4.0.18 · 6988eaff
      unknown authored
      
      Build-tools/Bootstrap:
        Auto merged
      client/mysql.cc:
        Auto merged
      mysql-test/r/auto_increment.result:
        Auto merged
      mysql-test/t/auto_increment.test:
        Auto merged
      mysql-test/t/type_decimal.test:
        Auto merged
      sql/opt_range.cc:
        Auto merged
      sql/share/czech/errmsg.txt:
        Auto merged
      sql/share/english/errmsg.txt:
        Auto merged
      sql/share/estonian/errmsg.txt:
        Auto merged
      sql/slave.cc:
        Auto merged
      sql/share/french/errmsg.txt:
        Auto merged
      sql/share/greek/errmsg.txt:
        Auto merged
      sql/share/hungarian/errmsg.txt:
        Auto merged
      sql/share/japanese/errmsg.txt:
        Auto merged
      sql/share/korean/errmsg.txt:
        Auto merged
      sql/share/norwegian-ny/errmsg.txt:
        Auto merged
      sql/share/norwegian/errmsg.txt:
        Auto merged
      sql/share/polish/errmsg.txt:
        Auto merged
      sql/share/romanian/errmsg.txt:
        Auto merged
      sql/share/slovak/errmsg.txt:
        Auto merged
      6988eaff
    • unknown's avatar
      merge · 245b1385
      unknown authored
      
      client/mysqldump.c:
        Auto merged
      client/mysqltest.c:
        Auto merged
      include/my_global.h:
        Auto merged
      libmysqld/lib_sql.cc:
        Auto merged
      mysql-test/r/warnings.result:
        Auto merged
      mysql-test/t/type_enum.test:
        Auto merged
      sql/field.cc:
        Auto merged
      sql/lex.h:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/mysqld.cc:
        Auto merged
      sql/set_var.cc:
        Auto merged
      sql/sql_parse.cc:
        Auto merged
      sql/sql_show.cc:
        Auto merged
      sql/sql_table.cc:
        Auto merged
      sql/sql_yacc.yy:
        Auto merged
      sql/table.cc:
        Auto merged
      245b1385
    • unknown's avatar
      Fixes after merge with 4.0 · 9c2a63e3
      unknown authored
      Cleaned up embedded library access and query cache handling
      Changed min stack size to 128K (to allow longer MyISAM keys)
      Fixed wrong priority for XOR (should be less than NEG to get -1^1 to work)
      
      
      client/mysqldump.c:
        Fixed bugs found after merge
      include/mysql_embed.h:
        Disable query cache when using embedded version
      myisam/mi_check.c:
        Removed not used variable
      mysql-test/r/auto_increment.result:
        Fixed bugs found after merge
      mysql-test/r/bdb.result:
        Fixed bugs found after merge
      mysql-test/r/func_group.result:
        Fixed bugs found after merge
      mysql-test/r/func_str.result:
        Fixed bugs found after merge
      mysql-test/r/func_time.result:
        Fixed bugs found after merge
      mysql-test/r/group_by.result:
        Fixed bugs found after merge
      mysql-test/r/innodb.result:
        Fixed bugs found after merge
      mysql-test/r/insert.result:
        Fixed bugs found after merge
      mysql-test/r/join_outer.result:
        Fixed bugs found after merge
      mysql-test/r/loaddata.result:
        Fixed bugs found after merge
      mysql-test/r/multi_update.result:
        Fixed bugs found after merge
      mysql-test/r/mysqldump.result:
        Update results
      mysql-test/r/rpl_EE_error.result:
        Fixed bugs found after merge
      mysql-test/r/rpl_multi_update.result:
        Fixed bugs found after merge
      mysql-test/r/symlink.result:
        Update results
      mysql-test/r/type_blob.result:
        Update results
      mysql-test/r/type_datetime.result:
        Update results
      mysql-test/r/type_decimal.result:
        Update results
      mysql-test/r/type_enum.result:
        Fixed bugs found after merge
      mysql-test/r/type_timestamp.result:
        Update results
      mysql-test/r/union.result:
        Update results
      mysql-test/r/warnings.result:
        Update results
      mysql-test/t/bdb.test:
        Fix test for 4.1
      mysql-test/t/innodb.test:
        Fix test for 4.1
      mysql-test/t/multi_update.test:
        Fix test for 4.1
      mysql-test/t/mysqldump.test:
        Fix test for 4.1
      mysql-test/t/rpl_EE_error.test:
        Fix test for 4.1
      mysql-test/t/rpl_multi_update.test:
        Fix test for 4.1
      mysql-test/t/union.test:
        Cleanup
      mysys/charset.c:
        Check results from my_once_alloc()
      mysys/my_handler.c:
        part of 4.0 merge
      sql-common/client.c:
        Part of 4.0 merge
      sql/field.cc:
        After merge fixes
      sql/field.h:
        After merge fixes
      sql/ha_innodb.cc:
        Remove duplicate include files
      sql/item.cc:
        Changed automatic int conversion to be of type binary
      sql/item.h:
        After merge fixes
      sql/item_func.cc:
        Changed automatic int conversion to be of type binary
      sql/item_func.h:
        After merge fixes
      sql/item_strfunc.cc:
        Added comments
      sql/item_subselect.cc:
        Indentation fixes
      sql/item_sum.cc:
        Changed automatic int conversion to be of type binary
      sql/item_sum.h:
        After merge fixes
      sql/mysql_priv.h:
        Cleanup embedded library access checks
      sql/mysqld.cc:
        Changed min stack size to 128K (to allow longer MyISAM keys)
      sql/set_var.cc:
        Fixed compiler warnings
      sql/share/czech/errmsg.txt:
        Better error message
      sql/share/danish/errmsg.txt:
        Better error message
      sql/share/dutch/errmsg.txt:
        Better error message
      sql/share/english/errmsg.txt:
        Better error message
      sql/share/estonian/errmsg.txt:
        Better error message
      sql/share/french/errmsg.txt:
        Better error message
      sql/share/greek/errmsg.txt:
        Better error message
      sql/share/hungarian/errmsg.txt:
        Better error message
      sql/share/italian/errmsg.txt:
        Better error message
      sql/share/japanese/errmsg.txt:
        Better error message
      sql/share/korean/errmsg.txt:
        Better error message
      sql/share/norwegian-ny/errmsg.txt:
        Better error message
      sql/share/norwegian/errmsg.txt:
        Better error message
      sql/share/polish/errmsg.txt:
        Better error message
      sql/share/romanian/errmsg.txt:
        Better error message
      sql/share/russian/errmsg.txt:
        Better error message
      sql/share/serbian/errmsg.txt:
        Better error message
      sql/share/slovak/errmsg.txt:
        Better error message
      sql/share/spanish/errmsg.txt:
        Better error message
      sql/share/swedish/errmsg.txt:
        Better error message
      sql/share/ukrainian/errmsg.txt:
        Better error message
      sql/sql_acl.h:
        Cleaned up embedded library acccess checks
      sql/sql_base.cc:
        After merge fixes
      sql/sql_client.cc:
        After merge fixes
      sql/sql_parse.cc:
        After merge fixes
        Changed access check code for embedded library (needed to make code shorter and ensure that check_table_access() is called)
        Recoded create-table handling for CREATE TABLE ... SELECT to make code shorter and faster
      sql/sql_prepare.cc:
        Add missing arguments
      sql/sql_select.cc:
        After merge fixes
      sql/sql_update.cc:
        After merge fixes
      sql/sql_yacc.yy:
        Fixed wrong priority for XOR (should be less than NEG to get -1^1 to work)
      sql/table.cc:
        After merge fixes
      9c2a63e3
    • unknown's avatar
      Merge lgrimmer@build.mysql.com:/home/bk/mysql-4.1 · 060122db
      unknown authored
      into mysql.com:/space/my/mysql-4.1
      
      
      060122db
    • unknown's avatar
      - removed empty file mysql-test/t/rpl_temporary-master.opt · 11870d56
      unknown authored
      
      BitKeeper/deleted/.del-rpl_temporary-master.opt~545ad67e7e74bbe0:
        Delete: mysql-test/t/rpl_temporary-master.opt
      11870d56
    • unknown's avatar
      3344aefc
  2. 18 Dec, 2003 15 commits
    • unknown's avatar
      Post-merge fixes and code cleanup · 06564b43
      unknown authored
      06564b43
    • unknown's avatar
      Post-merge fix. · 844d9b76
      unknown authored
      844d9b76
    • unknown's avatar
      Merge · fe6946ac
      unknown authored
      
      client/mysqltest.c:
        Auto merged
      include/mysqld_error.h:
        Auto merged
      libmysql/libmysql.c:
        Auto merged
      libmysqld/lib_sql.cc:
        Auto merged
      mysql-test/r/variables.result:
        Auto merged
      mysql-test/t/variables.test:
        Auto merged
      sql/handler.cc:
        Auto merged
      sql/handler.h:
        Auto merged
      sql/lex.h:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/mysqld.cc:
        Auto merged
      sql/net_serv.cc:
        Auto merged
      sql/set_var.cc:
        Auto merged
      sql/sql_lex.h:
        Auto merged
      sql/sql_parse.cc:
        Auto merged
      sql/sql_show.cc:
        Auto merged
      sql/sql_table.cc:
        Auto merged
      sql/udf_example.cc:
        Auto merged
      include/sql_state.h:
        SCCS merged
      sql/sql_yacc.yy:
        SCCS merged
      fe6946ac
    • unknown's avatar
      Corrected faulty #if tests in udf_example.cc which made udf_test crash the server on some · fddddc2c
      unknown authored
      platforms.
      
      
      sql/udf_example.cc:
        Corrected faulty #if tests which made udf_test crash the server on some
        platforms.
      fddddc2c
    • unknown's avatar
    • unknown's avatar
      Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-4.1 · 24937ffc
      unknown authored
      into deer.(none):/home/hf/work/mysql-4.1.2126
      
      
      24937ffc
    • unknown's avatar
      Fix for #2126 · 195b8ac5
      unknown authored
      additional changes (after discussion with Monty)
      
      
      libmysql/libmysql.c:
        it's good to check my_thread_init() result as well
      sql/client_settings.h:
        0 is more relevant here
      195b8ac5
    • unknown's avatar
      Merge psergey-rh8.(none):/home/psergey/mysql-5.0-latest-pull · 29a669e6
      unknown authored
      into psergey-rh8.(none):/home/psergey/mysql-5.0-imerge-unique
      
      
      mysql-test/r/index_merge_innodb.result:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/opt_range.cc:
        Auto merged
      sql/sql_class.cc:
        Auto merged
      sql/sql_class.h:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      sql/sql_update.cc:
        Auto merged
      BitKeeper/etc/logging_ok:
        Logging to logging@openlogging.org accepted
      29a669e6
    • unknown's avatar
      Removed compiler warning · f562d0c2
      unknown authored
      Fixed not updated test from last changeset
      
      
      mysql-test/r/auto_increment.result:
        Updated results
      sql/mysqld.cc:
        Cleaned up pid file handling (to remove compiler warning)
      f562d0c2
    • unknown's avatar
      Simple cleanups · 15484ba2
      unknown authored
      
      mysql-test/t/auto_increment.test:
        Fixed wrong comment
      sql/opt_range.cc:
        Removed not used variable
      sql/sql_select.cc:
        Removed indentation level (This will also make merges into 4.1 easier)
      15484ba2
    • unknown's avatar
      29af6f37
    • unknown's avatar
      Fix for #2126 (mysql_server_init call shouldn't be needed) · 886307f2
      unknown authored
      now mysql_server_init is called from mysql_init with fake parameters
      mysql_once_init code included to mysql_server_init.
      embedded-specific initialization is in init_embedded_server function
      
      
      include/errmsg.h:
        this error won't happen
      include/mysql.h:
        declarations removed
      libmysql/client_settings.h:
        declaration of init_embedded_server/end_embedded_server added
      libmysql/errmsg.c:
        this error won't happen
      libmysql/libmysql.c:
        mysql_once_init -> mysql_server_init transformations
      libmysqld/embedded_priv.h:
        declaration deleted
      libmysqld/lib_sql.cc:
        mysql_server_init -> init_embedded_server
        mysql_server_end  -> end_embedded_server
      libmysqld/libmysqld.c:
        check for server_inited not needed now
      sql-common/client.c:
        mysql_server_init now called from mysql_init
      sql/client_settings.h:
        fake mysql_server_init for server code
      sql/net_serv.cc:
        we need MYSQL_CLIENT defined in embedded server
      sql/sql_client.cc:
        not needed now
      886307f2
    • unknown's avatar
      7dbdedcb
    • unknown's avatar
      Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-5.0 · 540e94f9
      unknown authored
      into mysql.com:/home/mysql_src/mysql-5.0-new-binlog-format
      
      
      540e94f9
    • unknown's avatar
      This will be pushed only after I fix the testsuite. · 378894b0
      unknown authored
      This is the main commit for Worklog tasks:
       * A more dynamic binlog format which allows small changes (1064)
       * Log session variables in Query_log_event (1063)
      Below 5.0 means 5.0.0.
      MySQL 5.0 is able to replicate FOREIGN_KEY_CHECKS, UNIQUE_KEY_CHECKS (for speed),
      SQL_AUTO_IS_NULL, SQL_MODE. Not charsets (WL#1062), not some vars (I can only think
      of SQL_SELECT_LIMIT, which deserves a special treatment). Note that this
      works for queries, except LOAD DATA INFILE (for this it would have to wait
      for Dmitri's push of WL#874, which in turns waits for the present push, so...
      the deadlock must be broken!). Note that when Dmitri pushes WL#874 in 5.0.1,
      5.0.0 won't be able to replicate a LOAD DATA INFILE from 5.0.1.
      Apart from that, the new binlog format is designed so that it can tolerate
      a little variation in the events (so that a 5.0.0 slave could replicate a
      5.0.1 master, except for LOAD DATA INFILE unfortunately); that is, when I
      later add replication of charsets it should break nothing. And when I later
      add a UID to every event, it should break nothing.
      The main change brought by this patch is a new type of event, Format_description_log_event,
      which describes some lengthes in other event types. This event is needed for
      the master/slave/mysqlbinlog to understand a 5.0 log. Thanks to this event,
      we can later add more bytes to the header of every event without breaking compatibility.
      Inside Query_log_event, we have some additional dynamic format, as every Query_log_event
      can have a different number of status variables, stored as pairs (code, value); that's
      how SQL_MODE and session variables and catalog are stored. Like this, we can later
      add count of affected rows, charsets... and we can have options --don't-log-count-affected-rows
      if we want.
      MySQL 5.0 is able to run on 4.x relay logs, 4.x binlogs.
      Upgrading a 4.x master to 5.0 is ok (no need to delete binlogs),
      upgrading a 4.x slave to 5.0 is ok (no need to delete relay logs);
      so both can be "hot" upgrades.
      Upgrading a 3.23 master to 5.0 requires as much as upgrading it to 4.0.
      3.23 and 4.x can't be slaves of 5.0.
      So downgrading from 5.0 to 4.x may be complicated.
      Log_event::log_pos is now the position of the end of the event, which is
      more useful than the position of the beginning. We take care about compatibility
      with <5.0 (in which log_pos is the beginning).
      I added a short test for replication of SQL_MODE and some other variables.
      TODO:
      - after committing this, merge the latest 5.0 into it
      - fix all tests
      - update the manual with upgrade notes.
      
      
      client/Makefile.am:
        mysqlbinlog.cc depends slightly on sql/mysql_priv.h
      client/mysqlbinlog.cc:
        Make mysqlbinlog able to read the new binlog format,
        by seeking to the start and reading the first few events, to
        detect the format of the binlog.
      include/my_sys.h:
        a correct tell() for SEQ_READ_APPEND caches.
      mysys/mf_iocache2.c:
        a correct tell() for SEQ_READ_APPEND caches
        (my_b_tell() is not working for such caches).
      sql/ha_innodb.cc:
        we are getting rid of event lengthes here and there, which is good.
      sql/log.cc:
        Start events will have created==0 if generated by rotation (like in 3.23).
        In 5.0 we always write a Format_description_log_event at the beginning of
        every master's binary log and of every slave's relay log.
        We also add Rotate and Stop to relay logs (like there already was in
        master's binary logs).
        When we rotate a relay log, we write the previous relay log's Start event
        (the one which was sent from the master) to the beginning of the new log,
        so that we don't need the previous relay log to understand the new one;
        that's the purpose of MYSQL_LOG::description_event_for_queue.
        Removed logging of SET FOREIGN_KEY_CHECKS, because we handle it as flags
        in the Query event now.
      sql/log_event.cc:
        New event type: Format_description_log_event, to describe the log's format.
        read_log_event() needs to be passed this event to be able to read 5.0 events.
        Query_log_event has new members flags2 and sql_mode for replication of session
        variables (except charsets which are WL#1062) and SQL_MODE.
        flags2 is in fact a kind of copy of thd->options (&'d with a mask).
        Now with this replication of FOREIGN_KEY_CHECKS, SQL_AUTO_IS_NULL, UNIQUE_CHECKS
        and SQL_MODE work; with mysqlbinlog too.
      sql/log_event.h:
        Binlog version is changed to 4.
        New classes (details in sql/log_event.cc).
        Removing some useless #defines.
      sql/mysql_priv.h:
        Definition of SELECT_DISTINCT and others must be visible in client/mysqlbinlog.cc,
        so adding #ifdefs.
      sql/mysqld.cc:
        update for prototype change
      sql/slave.cc:
        When the slave opens a relay log, it reads the first few events to know the format.
        When slave I/O thread receives a Rotate from the master, it rotates its relay log
        (to avoid mixed format in the relay log).
      sql/slave.h:
        in the slave we avoid lengthes and rely on absolute positions instead;
        hence the introduction of future_group_master_log_pos and future_event_relay_log_pos
        (explained in code).
      sql/sql_class.cc:
        catalog in THD
      sql/sql_class.h:
        catalog, and new members in MYSQL_LOG
      sql/sql_repl.cc:
        When the master starts sending binlog to slave, it must
        first read the first few events to detect the binlog's format.
        Same for SHOW BINLOG EVENTS.
      378894b0
  3. 17 Dec, 2003 4 commits
    • unknown's avatar
      Code cleanup · 6b1e06e6
      unknown authored
      
      client/mysql.cc:
        Don't call mysql_close() on not initialized object
      sql/field.cc:
        code cleanup
      6b1e06e6
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-4.0 · fd3235dc
      unknown authored
      into mysql.com:/my/mysql-4.0
      
      
      fd3235dc
    • unknown's avatar
      WorkLog #1323 (part 2) · 69cee792
      unknown authored
      New Statement: SHOW [STORAGE] ENGINES
      New System Variable: storage_engine
      New mysqld Argument: --default-storage-engine=
      
      
      include/mysqld_error.h:
        We now call handlers STORAGE ENGINEs
      include/sql_state.h:
        We now call handlers STORAGE ENGINEs
      mysql-test/r/create.result:
        table_type system variable becomes storage_engine
      mysql-test/r/key_cache.result:
        table_type system variable becomes storage_engine
      mysql-test/r/variables.result:
        table_type system variable becomes storage_engine
      mysql-test/r/warnings.result:
        Test for deprecated table_type system variable
      mysql-test/t/create.test:
        table_type system variable becomes storage_engine
      mysql-test/t/key_cache.test:
        table_type system variable becomes storage_engine
      mysql-test/t/variables.test:
        table_type system variable becomes storage_engine
      mysql-test/t/warnings.test:
        Test for deprecated table_type system variable
      sql/handler.cc:
        change name for consistency
      sql/handler.h:
        change name for consistency
      sql/lex.h:
        New keywords - ENGINES and STORAGE
      sql/mysql_priv.h:
        change name for consistency
      sql/mysqld.cc:
        New command like argument for default-storage-engine
      sql/set_var.cc:
        New system variable for storage_engine
      sql/set_var.h:
        New system variable for storage_engine
      sql/sql_lex.h:
        Change for consistancy
      sql/sql_parse.cc:
        Change for consistancy
      sql/sql_show.cc:
        Change for consistancy
      sql/sql_table.cc:
        Change for consistancy
      sql/sql_yacc.yy:
        New keywords: STORAGE and ENGINES
        Change table_types to storage_engines
        New statement: SHOW [STORAGE] ENGINES
      69cee792
    • unknown's avatar
      Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0 · fb361992
      unknown authored
      into mysql.com:/home/mysql_src/mysql-4.0
      
      
      fb361992