1. 28 Apr, 2004 5 commits
  2. 27 Apr, 2004 1 commit
  3. 24 Apr, 2004 2 commits
  4. 21 Apr, 2004 1 commit
  5. 13 Apr, 2004 2 commits
    • unknown's avatar
      Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0 · d1214e2c
      unknown authored
      into mysql.com:/home/mysql_src/mysql-4.0
      
      
      d1214e2c
    • unknown's avatar
      Fix for BUG#3461 "multi-table DELETE replicated despite replicate-wild-ignore-table": · 0cd58c6c
      unknown authored
      In tables_ok(), when there is no table having "updating==TRUE" in the list,
          return that we don't replicate this statement (the slave is supposed to
          replicate *changes* only).
          In practice, the case can only happen for this statement:
          DELETE t FROM t,u WHERE ... ;
          tables_ok(t,u) will now return 0, which (check all_tables_not_ok())
          will give a chance to tables_ok(t) to run.
      
      
      sql/slave.cc:
        In tables_ok(), when there is no table having "updating==TRUE" in the list,
        return that we don't replicate this statement (the slave is supposed to
        replicate *changes* only).
        In practice, the case can only happen for this statement:
        DELETE t FROM t,u WHERE ... ;
        tables_ok(t,u) will now return 0, which (check all_tables_not_ok())
        will give a chance to tables_ok(t) to run.
      0cd58c6c
  6. 12 Apr, 2004 1 commit
    • unknown's avatar
      Fix typos that resulted in adding names to the global namespace that · c73efc80
      unknown authored
      were never defined.  This potentially caused problems when trying to link
      libmysqld with shared libraries.
      
      
      strings/longlong2str-x86.s:
        typo: longlong10_str -> longlong10_to_str
      strings/strings-x86.s:
        typo: strxmov_end-strxmov -> .strxmov_end-strxmov
      BitKeeper/etc/logging_ok:
        Logging to logging@openlogging.org accepted
      c73efc80
  7. 09 Apr, 2004 4 commits
  8. 08 Apr, 2004 4 commits
    • unknown's avatar
      Fix for BUG#3422 "In 3.23 -> 4.0 replication, slave segfault when replicating LOAD DATA INFILE": · 1f01df0e
      unknown authored
      as we transform the 3.23 Load_log_event into a 4.0 Create_file_log_event which is one
      byte longer, we need to increment event_len. The bug was that we did not increment it,
      so later in code the end 0 was not seen so there was for example a segfault in
      strlen(fname) because fname was not 0-terminated.
      Other problems remain in 3.23->4.0 replication of LOAD DATA INFILE but they are less serious:
      Exec_master_log_pos and Relay_log_space are incorrect. I'll document them.
      They are not fixable without significant code changes (if you fix those problems in 4.0,
      you get assertion failures somewhere else etc), * which are already done in 5.0.0 *.
      
      
      sql/slave.cc:
        In 3.23->4.0 replication of LOAD DATA INFILE:
        as we transform the 3.23 Load_log_event into a 4.0 Create_file_log_event which is one
        byte longer, we need to increment event_len.
        So we need to modify the event_len stored in the event.
        And we need to decrement event_len when we compute the offset in the master's binlog.
      1f01df0e
    • unknown's avatar
      Merge marko@build.mysql.com:/home/bk/mysql-4.0 · a5d016ec
      unknown authored
      into hundin.mysql.fi:/home/marko/j/mysql-4.0
      
      
      a5d016ec
    • unknown's avatar
      InnoDB: Fix a preprocessor error introduced in ChangeSet 1.1772 · 97f6935e
      unknown authored
      
      innobase/sync/sync0sync.c:
        Fix a preprocessor error introduced in ChangeSet 1.1772
      97f6935e
    • unknown's avatar
      sql_select.cc: · 26764a7b
      unknown authored
        Fix a glitch reported by Philippe Lewicki on the general mailing list: do not print a warning to the .err log if read_key fails with a lock wait timeout error 146
      
      
      sql/sql_select.cc:
        Fix a glitch reported by Philippe Lewicki on the general mailing list: do not print a warning to the .err log if read_key fails with a lock wait timeout error 146
      26764a7b
  9. 07 Apr, 2004 3 commits
    • unknown's avatar
      Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0 · d94cf5fb
      unknown authored
      into mysql.com:/home/mysql_src/mysql-4.0
      
      
      d94cf5fb
    • unknown's avatar
      Fix for BUG#3415 "mysqlbinlog loses a USE command when LOAD DATA INFILE is involved": · 726917a2
      unknown authored
      if you are printing LOAD DATA INFILE and its USE as comments, don't update 'last_db' (because you
      have not actually changed the db in the server).
      
      
      sql/log_event.cc:
        if you are printing LOAD DATA INFILE and its USE as comments, don't update 'last_db' (because you
        have not actually changed the db in the server).
      726917a2
    • unknown's avatar
      InnoDB: Remove debug functions unless #ifdef UNIV_DEBUG · 095d6463
      unknown authored
      
      innobase/btr/btr0btr.c:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/buf/buf0buf.c:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/buf/buf0flu.c:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/buf/buf0lru.c:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/buf/buf0rea.c:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/data/data0type.c:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/dict/dict0dict.c:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/fsp/fsp0fsp.c:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/fut/fut0lst.c:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/ibuf/ibuf0ibuf.c:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/include/btr0btr.h:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/include/buf0buf.h:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/include/buf0buf.ic:
        Remove global declaration of buf_dbg_counter
      innobase/include/buf0flu.h:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/include/buf0lru.h:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/include/data0type.h:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/include/dict0dict.h:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/include/fsp0fsp.h:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/include/fut0lst.h:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/include/lock0lock.h:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/include/mem0dbg.h:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/include/mem0dbg.ic:
        Add #ifdef UNIV_MEM_DEBUG around debug code
      innobase/include/mem0pool.h:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/include/mtr0mtr.h:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/include/pars0opt.h:
        Add #ifdef UNIV_SQL_DEBUG around debug code
      innobase/include/sync0rw.h:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/include/sync0sync.h:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/include/trx0sys.h:
        Add #ifdef UNIV_HOTBACKUP around InnoDB Hot Backup specific code
      innobase/lock/lock0lock.c:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/mem/mem0dbg.c:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/mem/mem0pool.c:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/mtr/mtr0mtr.c:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/pars/pars0opt.c:
        Add #ifdef UNIV_SQL_DEBUG around debug code
      innobase/srv/srv0start.c:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/sync/sync0rw.c:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/sync/sync0sync.c:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/trx/trx0roll.c:
        Add #ifdef UNIV_DEBUG around debug code
      innobase/trx/trx0sys.c:
        Add #ifdef UNIV_HOTBACKUP around InnoDB Hot Backup specific code
      095d6463
  10. 06 Apr, 2004 6 commits
    • unknown's avatar
      Fix for BUG#3401 "Rare replication bug which leads to "Binlog has bad magic number" from slave": · 1f50a034
      unknown authored
      Backport of a part of this changeset of 4.1:
      ChangeSet@1.1753.1.1, 2004-04-05 13:56:05+03:00, monty@mysql.com
      which fixes the bug.
      
      
      sql/slave.cc:
        even if mi is already inited (replication already run once before),
        we need to seek back to the beginning of the relay log to be able
        to later check the binlog's magic number.
      1f50a034
    • unknown's avatar
      Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0 · aacdf1ee
      unknown authored
      into mysql.com:/home/mysql_src/mysql-4.0
      
      
      aacdf1ee
    • unknown's avatar
      This is a fix for a bug in 3.23 -> 4.0 replication: Exec_master_log_pos is always · e3f0177b
      unknown authored
      too big by 6 bytes. So I add code to substract 6 bytes if the master is 3.23.
      This is not perfect (because it won't work if the slave I/O thread has not
      noticed yet that the master is 3.23), but as long as the slave I/O thread
      starts Exec_master_log_pos will be ok.
      It must be merged to 4.1 but not to 5.0 (or it can be, because of #if MYSQL_VERSION_ID),
      because 5.0 already works if the master is 3.23 (and in a more natural way:
      in 5.0 we store the end_log_pos in the binlog and relay log).
      I had to move functions from slave.h to slave.cc to satisfy gcc.
      
      
      sql/log_event.cc:
        make the event's length 6 bytes shorter if the master is 3.23
      sql/slave.cc:
        Moving several st_relay_log_info methods out of the declaration of the struct,
        because gcc complained that 'mi' was not declared.
        Substracting 6 bytes from the event's length in inc_pos() if the master is 3.23.
      sql/slave.h:
        moving several methods out of the declaration of st_relay_log_info.
        Removing 'inline', let's have the compiler decide.
      e3f0177b
    • unknown's avatar
      InnoDB: send diagnostic output to stderr or files · 80fe399f
      unknown authored
      instead of stdout or fixed-size memory buffers
      
      
      innobase/btr/btr0btr.c:
        Output to stderr; quote table and index names
      innobase/btr/btr0cur.c:
        Output to stderr; quote table and index names
      innobase/btr/btr0sea.c:
        Output to stderr
      innobase/buf/buf0buf.c:
        Output to stderr; quote table and index names
      innobase/buf/buf0flu.c:
        Output to stderr
      innobase/buf/buf0lru.c:
        Output to stderr
      innobase/buf/buf0rea.c:
        Output to stderr
      innobase/data/data0data.c:
        Remove dtuple_validate() unless #ifdef UNIV_DEBUG
        Remove unnecessary sprintf() calls
        Output to stderr
      innobase/data/data0type.c:
        Output to stderr
      innobase/dict/dict0boot.c:
        Remove dummy call to printf()
      innobase/dict/dict0crea.c:
        Output diagnostic information to stream, not to memory
      innobase/dict/dict0dict.c:
        Output diagnostics to a file, not to a memory buffer
      innobase/dict/dict0load.c:
        Output to stderr; quote table and index names
      innobase/eval/eval0eval.c:
        Output to stderr
      innobase/fil/fil0fil.c:
        Output to stderr
      innobase/fsp/fsp0fsp.c:
        Output to stderr
        Avoid sprintf()
      innobase/fut/fut0lst.c:
        Output to stderr
      innobase/ha/ha0ha.c:
        Output to stream, not to memory buffer
      innobase/ibuf/ibuf0ibuf.c:
        Output to stderr
        Avoid sprintf()
      innobase/include/buf0buf.h:
        Output to stream, not to memory buffer
      innobase/include/buf0buf.ic:
        Use %p for displaying pointers
      innobase/include/data0data.h:
        Remove dtuple_sprintf()
      innobase/include/dict0dict.h:
        Output to stream, not to memory buffer
      innobase/include/ha0ha.h:
        Output to stream, not to memory buffer
      innobase/include/ibuf0ibuf.h:
        Output to stream, not to memory buffer
      innobase/include/lock0lock.h:
        Output to stream, not to memory buffer
      innobase/include/log0log.h:
        Output to stream, not to memory buffer
      innobase/include/mtr0log.ic:
        Output to stderr
        Display pointers with %p
      innobase/include/os0file.h:
        Output to stream, not to memory buffer
      innobase/include/rem0rec.h:
        Remove rec_sprintf()
      innobase/include/rem0rec.ic:
        Output to stderr
      innobase/include/row0sel.ic:
        Output to stderr
      innobase/include/row0upd.ic:
        Quote table and index names
      innobase/include/srv0srv.h:
        Remove srv_sprintf_innodb_monitor()
      innobase/include/sync0arr.h:
        Output to stream, not to memory buffer
      innobase/include/sync0sync.h:
        Output to stream, not to memory buffer
      innobase/include/trx0sys.h:
        Output to stderr
      innobase/include/trx0trx.h:
        Output to stream, not to memory buffer
      innobase/include/ut0ut.h:
        Remove ut_sprintf_buf()
        Add ut_print_name(), ut_print_namel() and ut_copy_file()
      innobase/lock/lock0lock.c:
        Output to stream, not to memory buffer
      innobase/log/log0log.c:
        Output to stderr
      innobase/log/log0recv.c:
        Output to stderr
      innobase/mem/mem0dbg.c:
        Output to stderr
      innobase/mtr/mtr0log.c:
        Display pointers with %p
      innobase/mtr/mtr0mtr.c:
        Output to stderr
      innobase/os/os0file.c:
        Output to stream, not to memory buffer
      innobase/os/os0proc.c:
        Output to stderr
      innobase/os/os0thread.c:
        Output to stderr
      innobase/page/page0cur.c:
        Output to stderr
      innobase/page/page0page.c:
        Avoid sprintf()
        Output to stderr instead of stdout
      innobase/pars/pars0opt.c:
        Output to stderr instead of stdout
      innobase/rem/rem0rec.c:
        Remove rec_sprintf()
        Output to stderr instead of stdout
      innobase/row/row0ins.c:
        Output diagnostics to stream instead of memory buffer
      innobase/row/row0mysql.c:
        Output to stderr instead of stdout
        Quote table and index names
      innobase/row/row0purge.c:
        Output to stderr instead of stdout
      innobase/row/row0row.c:
        Quote table and index names
      innobase/row/row0sel.c:
        Output to stderr instead of stdout
        Quote table and index names
      innobase/row/row0umod.c:
        Avoid sprintf()
        Quote table and index names
      innobase/row/row0undo.c:
        Output to stderr instead of stdout
      innobase/row/row0upd.c:
        Avoid sprintf()
      innobase/srv/srv0srv.c:
        Output to stderr instead of stdout
      innobase/srv/srv0start.c:
        Handle srv_monitor_file
        Make some global variables static
      innobase/sync/sync0arr.c:
        Output to stderr instead of stdout
        Output to stream instead of memory buffer
      innobase/sync/sync0rw.c:
        Output to stderr instead of stdout
      innobase/sync/sync0sync.c:
        Output to stderr instead of stdout
        Output to stream instead of memory buffer
      innobase/trx/trx0purge.c:
        Output to stderr instead of stdout
      innobase/trx/trx0rec.c:
        Quote index and table names
        Avoid sprintf()
      innobase/trx/trx0roll.c:
        Quote identifier names
        Output to stderr instead of stdout
      innobase/trx/trx0sys.c:
        Output to stderr instead of stdout
      innobase/trx/trx0trx.c:
        Output to stream instead of memory buffer
      innobase/trx/trx0undo.c:
        Output to stderr instead of stdout
      innobase/ut/ut0ut.c:
        Declare mysql_get_identifier_quote_char()
        Remove ut_sprintf_buf()
        Add ut_print_name() and ut_print_namel()
        Add ut_copy_file()
      sql/ha_innodb.cc:
        innobase_mysql_print_thd(): output to stream, not to memory buffer
        Add mysql_get_identifier_quote_char()
        Remove unused function innobase_print_error()
        Display pointers with %p
        Buffer InnoDB output via files, not via statically allocated memory
      80fe399f
    • unknown's avatar
      Merge marko@build.mysql.com:/home/bk/mysql-4.0 · d809c441
      unknown authored
      into hundin.mysql.fi:/home/marko/j/mysql-4.0
      
      
      d809c441
    • unknown's avatar
      Merge eagle.mysql.r18.ru:/home/vva/work/mysql.orig/clear/mysql-4.0 · 68ffa06f
      unknown authored
      into eagle.mysql.r18.ru:/home/vva/work/BUG_3361/mysql-4.0
      
      
      68ffa06f
  11. 05 Apr, 2004 6 commits
  12. 02 Apr, 2004 3 commits
    • unknown's avatar
      InnoDB: ignore intra-database foreign key references between tables · fac3642c
      unknown authored
      when dropping database (Bug #3058)
      
      
      innobase/dict/dict0crea.c:
        Add a parameter to row_drop_table_for_mysql()
      innobase/dict/dict0dict.c:
        Make dict_tables_have_same_db() a global function
      innobase/include/dict0dict.h:
        Make dict_tables_have_same_db() a global function
      innobase/include/row0mysql.h:
        Add a parameter to row_drop_table_for_mysql()
      innobase/row/row0mysql.c:
        Add a parameter "drop_db" to row_drop_table_for_mysql()
        to skip foreign constraint checks on tables in same database
      innobase/trx/trx0roll.c:
        Add a parameter to row_drop_table_for_mysql()
      sql/ha_innodb.cc:
        Add a parameter "drop_db" to row_drop_table_for_mysql()
        innobase_drop_database(): allocate namebuf dynamically
      fac3642c
    • unknown's avatar
      Merge marko@build.mysql.com:/home/bk/mysql-4.0 · ca68cb66
      unknown authored
      into hundin.mysql.fi:/home/marko/j/mysql-4.0
      
      
      ca68cb66
    • unknown's avatar
      InnoDB: Handle quotes properly in the InnoDB SQL parser · 5e522f36
      unknown authored
      
      innobase/include/pars0pars.h:
        Remove dummy yywrap() function (use %noyywrap in pars0lex.l)
      innobase/pars/lexyy.c:
        New version corresponding to pars0lex.l
      innobase/pars/pars0lex.l:
        Add %option statements
        Add string_append()
        Allow quotes within quotes
        Simplify the patterns for matching comments
      innobase/pars/pars0pars.c:
        Remove dummy yywrap() function (use %noyywrap in pars0lex.l)
      innobase/pars/pars0sym.c:
        Remove quote handling from sym_tab_add_str_lit()
      5e522f36
  13. 01 Apr, 2004 2 commits