1. 18 Jul, 2003 5 commits
  2. 17 Jul, 2003 1 commit
  3. 16 Jul, 2003 5 commits
  4. 15 Jul, 2003 4 commits
  5. 14 Jul, 2003 12 commits
    • unknown's avatar
      merge · c36c37c3
      unknown authored
      
      mysql-test/r/rpl_max_relay_size.result:
        Auto merged
      c36c37c3
    • unknown's avatar
      Fixed wrong test in LOG::close · e97b2766
      unknown authored
      Fixed test for binary build
      
      
      mysql-test/r/rpl_max_relay_size.result:
        Fixed test for binary build
      mysql-test/t/rpl_max_relay_size.test:
        Fixed test for binary build
      sql/log.cc:
        Fixed wrong test in close
      e97b2766
    • unknown's avatar
      Added missing --replace_result for ports in SHOW SLAVE STATUS. · 45db29db
      unknown authored
      
      mysql-test/r/rpl_max_relay_size.result:
        result update
      mysql-test/t/rpl_max_relay_size.test:
        port-independent test
      45db29db
    • unknown's avatar
      errmsg.txt: · aa70f482
      unknown authored
        Correct a misleading error message about max row length
      
      
      sql/share/english/errmsg.txt:
        Correct a misleading error message about max row length
      aa70f482
    • unknown's avatar
      ha_innodb.h: · 66672ad1
      unknown authored
        Revert the previous patch: MySQL would not allow creation of VARCHAR columns whose total max length is > 8000 bytes, though InnoDB can easily store them as trailing spaces are removed
      
      
      sql/ha_innodb.h:
        Revert the previous patch: MySQL would not allow creation of VARCHAR columns whose total max length is > 8000 bytes, though InnoDB can easily store them as trailing spaces are removed
      66672ad1
    • unknown's avatar
      ha_innodb.h: · 666d4717
      unknown authored
        Fix wrong error message: If one tried to create table with a very big row len, MySQL claimed the max len is 64 kB for InnoDB, while it normally is 8000 bytes
      
      
      sql/ha_innodb.h:
        Fix wrong error message: If one tried to create table with a very big row len, MySQL claimed the max len is 64 kB for InnoDB, while it normally is 8000 bytes
      666d4717
    • unknown's avatar
      Better fix for bug #791: At binlog rotation, INSERTs may not find their way into the binlog · 128feded
      unknown authored
      
      mysql-test/t/rpl_flush_log_loop.test:
        Add timer to avoid problem when 'flush logs' is executed before we have read all data from master
      sql/log.cc:
        Better fix for bug #791:
        Mark log as LOG_TO_BE_OPENED instead of LOG_CLOSED when it's closed and opened.
      sql/mysqld.cc:
        Better startup message
      sql/slave.cc:
        Fix argument to close()
      sql/sql_class.h:
        Better handling of log.close()
      128feded
    • unknown's avatar
      Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.0 · c4daa716
      unknown authored
      into mysql.r18.ru:/usr/home/ram/work/4.0
      
      
      c4daa716
    • unknown's avatar
      e45b9ab4
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-4.0 · 3611f70a
      unknown authored
      into mashka.mysql.fi:/home/my/mysql-4.0
      
      
      3611f70a
    • unknown's avatar
      Safety and speedup fixes: · e1a30696
      unknown authored
      Changed is_open() to work as before.
      Added back inited argument to LOG
      
      
      mysql-test/r/rpl_flush_log_loop.result:
        Fixed results (probably bug in previous rpatch)
      sql/handler.cc:
        Changed is_open() to work as before
      sql/item_func.cc:
        Changed is_open() to work as before
      sql/log.cc:
        Part revert of previous patch.
        The reason for adding back 'inited' is that is that we can't be 100 % sure that init_pthread_objects() is called before mysqld dies (for example on windows)
        I removed mutex lock handling in is_open() as the new code didn't have ANY affect except beeing slower.
        Added back checking of is_open() to some functions as we don't want to do a mutex lock when we are not using logging.
        Indentation/comment fixes
      sql/log_event.cc:
        Changed is_open() to work as before
      sql/repl_failsafe.cc:
        Changed is_open() to work as before
      sql/sql_base.cc:
        Changed is_open() to work as before
      sql/sql_class.h:
        Changed is_open() to work as before. Added back 'inited' variable
      sql/sql_db.cc:
        Changed is_open() to work as before
      sql/sql_delete.cc:
        Changed is_open() to work as before
      sql/sql_insert.cc:
        Changed is_open() to work as before
      sql/sql_load.cc:
        Changed is_open() to work as before
      sql/sql_parse.cc:
        Changed is_open() to work as before
      sql/sql_rename.cc:
        Changed is_open() to work as before
      sql/sql_repl.cc:
        Changed is_open() to work as before
      sql/sql_table.cc:
        Changed is_open() to work as before
      sql/sql_update.cc:
        Changed is_open() to work as before
      e1a30696
    • unknown's avatar
      Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.0 · c4381bb0
      unknown authored
      into mysql.r18.ru:/usr/home/ram/work/4.0
      
      
      c4381bb0
  6. 13 Jul, 2003 2 commits
    • unknown's avatar
      srv0srv.c: · d1b9076e
      unknown authored
        Put back a 50 millisecond sleep in too high concurrency situations which I removed in the previous push; count also such sleeping threads to the InnoDB queue in SHOW INNODB STATUS
      
      
      innobase/srv/srv0srv.c:
        Put back a 50 millisecond sleep in too high concurrency situations which I removed in the previous push; count also such sleeping threads to the InnoDB queue in SHOW INNODB STATUS
      d1b9076e
    • unknown's avatar
      srv0srv.c: · 706dc59f
      unknown authored
        Fix a benign bug introduced in 4.0.14: InnoDB could complain 'Error: trying to declare trx to enter InnoDB' if several threads tried to init the auto-inc counter for the same table at the same time; in theory, the bug could even lead to a hang of the server, but that shuld be extremely improbable
      
      
      innobase/srv/srv0srv.c:
        Fix a benign bug introduced in 4.0.14: InnoDB could complain 'Error: trying to declare trx to enter InnoDB' if several threads tried to init the auto-inc counter for the same table at the same time; in theory, the bug could even lead to a hang of the server, but that shuld be extremely improbable
      706dc59f
  7. 12 Jul, 2003 6 commits
    • unknown's avatar
      srv0start.c, srv0srv.h, os0file.h, os0file.c: · bc479783
      unknown authored
        Allow also O_DIRECT as innodb_flush_method; it only affects writing to data files
      
      
      innobase/os/os0file.c:
        Allow also O_DIRECT as innodb_flush_method; it only affects writing to data files
      innobase/include/os0file.h:
        Allow also O_DIRECT as innodb_flush_method; it only affects writing to data files
      innobase/include/srv0srv.h:
        Allow also O_DIRECT as innodb_flush_method; it only affects writing to data files
      innobase/srv/srv0start.c:
        Allow also O_DIRECT as innodb_flush_method; it only affects writing to data files
      bc479783
    • unknown's avatar
      perror.c: · 91eb7ce1
      unknown authored
        fix typo.
      
      
      extra/perror.c:
        fix typo.
      BitKeeper/etc/logging_ok:
        Logging to logging@openlogging.org accepted
      91eb7ce1
    • unknown's avatar
      Cleaning after removing LOG_INFO_PURGE_NO_ROTATE. · 9480ec82
      unknown authored
      
      sql/sql_repl.cc:
        In my previous change I removed 'no_rotate' from MYSQL_LOG, so this made
        LOG_INFO_PURGE_NO_ROTATE useless (an error code which was never returned),
        so I remove it of the 'switch'.
      9480ec82
    • unknown's avatar
      Member no_rotate in MYSQL_LOG was always 0, I delete it. · 5526d454
      unknown authored
      
      sql/log.cc:
        Member no_rotate of MYSQL_LOG is useless; this shows it for sure:
        [guilhem@gbichot2 mysql-4.0]$ bk -r grep no_rotate
        sql/log.cc      1.83       no_rotate(0), need_start_event(1)
        sql/log.cc      1.75      if (no_rotate)
        sql/log.cc      1.89      if (!no_rotate)
        sql/sql_class.h 1.119     bool no_rotate;
        i.e. no_rotate is 0 all the time. So we don't need it.
        Biggest part of the patch is indentation change.
      sql/sql_class.h:
        suppress no_rotate
      5526d454
    • unknown's avatar
      Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0 · 351a03df
      unknown authored
      into mysql.com:/home/mysql_src/mysql-4.0
      
      
      351a03df
    • unknown's avatar
      removed 2 small useless if(). · 543208de
      unknown authored
      
      sql/log.cc:
        a comment for the future.
      sql/mysqld.cc:
        if (p) is not needed: fn_ext() always returns a valid pointed; the way
        to test if an extension was found is if (*p), not if (p).
        But here even if there's no extension, we still want to truncate opt_name
        to FN_REFLEN, so we always execute the code.
        By design, the test was always 'false' (because we strip the extension before
        testing if there's an extension) so log->set_no_rotate never executed.
      sql/sql_class.h:
        remove set_no_rotate as we don't need it.
      543208de
  8. 11 Jul, 2003 5 commits
    • unknown's avatar
      - fixed an error in the rpl_error_ignored_table test suite: the master · 1c5773ad
      unknown authored
         port number can be different from 3306 when doing the release builds
         with Do-compile, therefore it has to be replaced with the correct
         value during the test run using the "--replace_result" function.
      
      
      mysql-test/r/rpl_error_ignored_table.result:
         - replaced hard-coded master port number with MASTER_PORT variable, since
           the port number is different when running the test suite during the 
           release builds with "Do-compile".
      mysql-test/t/rpl_error_ignored_table.test:
         - replaced hard-coded master port number with MASTER_PORT variable, since
           the port number is different when running the test suite during the 
           release builds with "Do-compile".
      1c5773ad
    • unknown's avatar
      - fixed a typo in previous push · aa28da79
      unknown authored
      
      Build-tools/Bootstrap:
         - duh!
      aa28da79
    • unknown's avatar
      - fixed a bug in Bootstrap script: simply searching for the last tagged · 762b1346
      unknown authored
         ChangeSet was not sufficient to get the full ChangeLog between two
         released versions (when using "--changelog=last") as merging between 
         trees also merges the BK tags. Now we explicitely search for the last
         tagged ChangeSet that matches our major+minor version number, which 
         should match the last ChangeSet used for the previous release.
      
      
      Build-tools/Bootstrap:
         - fixed a bug: simply searching for the last tagged ChangeSet was not
           sufficient to get the full ChangeLog between two released versions
           (when using "--changelog=last") as merging between trees also merges
           the BK tags. Now we explicitely search for the last tagged ChangeSet
           that matches our major+minor version number, which should match the
           last ChangeSet used for the previous release.
      762b1346
    • unknown's avatar
      Fix for BUG#791: · d974959b
      unknown authored
      a safer way of initing the mutexes in MYSQL_LOG.
      is_open() is now always thread-safe.
      See each file for details.
      
      
      sql/handler.cc:
        is_open() with locks
      sql/item_func.cc:
        is_open() with locks
      sql/log.cc:
        No more 'inited'.
        We now always use is_open() in a thread-safe manner.
        This simplifies some functions (no more need to test is_open() twice).
      sql/log_event.cc:
        is_open() with locks
      sql/mysqld.cc:
        Init mutexes for the global MYSQL_LOG objects.
        We care about no_rotate, because we can't do it in open() anymore (because
        we don't have 'inited' anymore).
      sql/repl_failsafe.cc:
        is_open() with locks
      sql/slave.cc:
        init pthread objects (mutexes, conds) in the constructor of st_relay_log_info.
        Some better locking in rotate_relay_log().
      sql/sql_base.cc:
        is_open() with locks
      sql/sql_class.h:
        Before, we inited LOCK_log in MYSQL_LOG::open(), so in other places of the code
        when we were never 100% sure that it had been inited. For example, if the server
        was running without --log-bin, ::open() was not called so the mutex was not
        inited. We could detect it with !inited, but not safely as 'inited' was not
        protected by any mutex.
        So now:
        we *always* init the LOCK_log mutex, even if the log is not used. We can't init
        the mutex in MYSQL_LOG's constructor, because for global objects like
        mysql_bin_log, mysql_log etc, the constructor is called before MY_INIT(), but
        safe_mutex depends on MY_INIT(). So we have a new function MYSQL_LOG::init_pthread_objects
        which we call in main(), after MY_INIT().
        For the relay log, we call this function in the constructor of
        st_relay_log_info, which is called before any function tries to
        use the relay log (the relay log is always invoked as rli.relay_log).
        So now we should be safe in all cases and we don't need 'inited'.
      sql/sql_db.cc:
        is_open() with locks
      sql/sql_delete.cc:
        is_open() with locks
      sql/sql_insert.cc:
        is_open() with locks
      sql/sql_load.cc:
        is_open() with locks
      sql/sql_parse.cc:
        is_open() with locks
      sql/sql_rename.cc:
        is_open() with locks
      sql/sql_repl.cc:
        is_open() with locks
      sql/sql_table.cc:
        is_open() with locks
      sql/sql_update.cc:
        is_open() with locks
      d974959b
    • unknown's avatar