1. 17 Oct, 2005 1 commit
    • unknown's avatar
      Fix for bug #12739 "Deadlock in multithreaded environment during creating/ · 1a00e60b
      unknown authored
      droping trigger on InnoDB table".
      
      Deadlock occured in cases when we were trying to create two triggers for
      the same InnoDB table concurrently and both threads were able to reach
      close_cached_table() simultaneously. Bugfix implements new approach to
      table locking and table cache invalidation during creation/dropping
      of trigger.
      
      No testcase is supplied since bug was repeatable only under high concurrency.
      
      
      sql/mysql_priv.h:
        reopen_name_locked_table():
          Changed function signature to make it more robust against erroneous usage.
      sql/sql_base.cc:
        reopen_name_locked_table():
          Changed function signature to make it more robust against erroneous usage.
          Obtaining LOCK_open lock is now resposibility of caller.
          When searching for the table to open we should not prefer connection's current
          database over database which was explicitly specified in TABLE_LIST::db member
          (even if database is not explicitly specified for table in original query
          TABLE_LIST::db will be set properly at parsing stage).
          Fixed behavior of function in cases when error occurs during opening of table.
      sql/sql_table.cc:
        prepare_for_restore()/prepare_for_repair():
          We should not prefer connection's current database over database which was
          specified in TABLE_LIST::db member (even if database is not explicitly
          specified for table in original query TABLE_LIST::db will be set properly
          at parsing stage). Fixed behavior in unlikely case when we are unable
          to open table which we are restoring/reparing at the end of preparation
          stage.
      sql/sql_trigger.cc:
        mysql_create_or_drop_trigger():
          Now instead of opening and locking table, creating trigger, and then trying
          to invalidate all instances of this table in table cache, we obtain name
          lock on table first (thus ensuring that no other thread has this table
          open), open it, create trigger and then close table therefore releasing lock.
          New approach is more in line with other places where change .frm files
          (i.e. change table meta-data).
          With this change we also get rid of deadlock which occured in cases when we
          were trying to create two triggers for the same InnoDB table concurrently
          and both threads were able to reach close_cached_table() simultaneously.
          (Alternative was to forbid to InnoDB downgrade locks for CREATE/DROP
           TRIGGER statements in one way or another but I think that proposed
           solution is better long term).
      1a00e60b
  2. 07 Oct, 2005 7 commits
  3. 06 Oct, 2005 15 commits
    • unknown's avatar
      make_binary_distribution.sh: · ca0980ca
      unknown authored
        Corrected platform name output
      Services.cpp:
        Dont print null address (back port from 5.0)
      
      
      ndb/src/mgmsrv/Services.cpp:
        Dont print null address (back port from 5.0)
      scripts/make_binary_distribution.sh:
        Corrected platform name output
      ca0980ca
    • unknown's avatar
      make_binary_distribution.sh: · 449b1f23
      unknown authored
        Reintroduced --machine
        Better sh compatibility, "for i ; do" is not portable
      
      
      scripts/make_binary_distribution.sh:
        Reintroduced --machine
        Better sh compatibility, "for i ; do" is not portable
      449b1f23
    • unknown's avatar
      Merge mysql.com:/home/dellis/mysqlab/bk/local_mysql-4.1 · bd80d76d
      unknown authored
      into  mysql.com:/home/dellis/mysqlab/bk/mysql-5.0
      
      bd80d76d
    • unknown's avatar
      Merge dellis@bk-internal.mysql.com:/home/bk/mysql-4.1 · 560f103f
      unknown authored
      into  mysql.com:/home/dellis/mysqlab/bk/mysql-4.1
      
      560f103f
    • unknown's avatar
      Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-5.0 · 22e07f19
      unknown authored
      into  ua141d10.elisa.omakaista.fi:/home/my/bk/mysql-5.0
      
      22e07f19
    • unknown's avatar
      Fixed a bug in argument sending to get_one_option. · 9a64e0a7
      unknown authored
      Fixed documentation for findopt().
      Cleaned code a bit.
      
      9a64e0a7
    • unknown's avatar
      don't "init" binlog if opt_bin_log is not set · 7f37d2d7
      unknown authored
      (bug#13791 - mysqld crashes at startup in TC_LOG_MMAP::open)
      
      7f37d2d7
    • unknown's avatar
      make_binary_distribution.sh: · 619f70a6
      unknown authored
        Replaced --machine with --platform
        General code cleanup
      
      
      scripts/make_binary_distribution.sh:
        Replaced --machine with --platform
        General code cleanup
      619f70a6
    • unknown's avatar
      Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-4.1 · a8655162
      unknown authored
      into mysql.com:/home/gluh/MySQL/Bugs/4.1.13605
      
      a8655162
    • unknown's avatar
      Fix for bug#13605 'rpl_openssl' test hangs · 00a8b856
      unknown authored
      00a8b856
    • unknown's avatar
      Merge · 21530e79
      unknown authored
      21530e79
    • unknown's avatar
      Merge msdesk.(none):/home/msvensson/mysql-4.1 · f647668a
      unknown authored
      into  msdesk.(none):/home/msvensson/mysql-5.0
      
      
      BUILD/SETUP.sh:
        Auto merged
      BitKeeper/deleted/.del-ctype-cp932.c:
        Auto merged
      BitKeeper/deleted/.del-ctype_cp932.result:
        Auto merged
      BitKeeper/deleted/.del-ctype_cp932.test:
        Auto merged
      BitKeeper/deleted/.del-ndb_range_bounds.pl~ff7e47a35fb44c74:
        Auto merged
      innobase/os/os0sync.c:
        Auto merged
      mysql-test/r/ctype_tis620.result:
        Auto merged
      mysql-test/r/ctype_ucs.result:
        Auto merged
      mysql-test/r/ctype_utf8.result:
        Auto merged
      mysql-test/t/ctype_uca.test:
        Auto merged
      mysql-test/t/ctype_ucs.test:
        Auto merged
      mysql-test/t/ctype_ujis.test:
        Auto merged
      mysql-test/t/ctype_utf8.test:
        Auto merged
      sql/ha_innodb.cc:
        Auto merged
      sql/item_cmpfunc.cc:
        Auto merged
      strings/ctype-big5.c:
        Auto merged
      strings/ctype-gbk.c:
        Auto merged
      strings/ctype-simple.c:
        Auto merged
      strings/ctype-sjis.c:
        Auto merged
      strings/ctype-ucs2.c:
        Auto merged
      client/mysql.cc:
        Sam change in both 4.1 and 5.0
      mysql-test/r/ctype_uca.result:
        Merge
      mysql-test/r/ctype_ujis.result:
        Merge
      strings/ctype-mb.c:
        Merge
      strings/ctype-tis620.c:
        Merge
      f647668a
    • unknown's avatar
      item_cmpfunc.cc: · 0e525946
      unknown authored
        Wrong variable.
      
      
      sql/item_cmpfunc.cc:
        Wrong variable.
      0e525946
    • unknown's avatar
      ndb - prelim perl scripts to autotest · eaee2d6e
      unknown authored
      
      BitKeeper/deleted/.del-ndb_range_bounds.pl~ff7e47a35fb44c74:
        Delete: mysql-test/ndb/ndb_range_bounds.pl
      eaee2d6e
    • unknown's avatar
      my_pthread.h: · 71b47603
      unknown authored
        Let pthread_mutex_init() macro return 0 on Windows
      mysql_priv.h:
        Return type is to be 'my_bool' for 'opt_enable_shared_memory'
      
      
      sql/mysql_priv.h:
        Return type is to be 'my_bool' for 'opt_enable_shared_memory'
      include/my_pthread.h:
        Let pthread_mutex_init() macro return 0 on Windows
      71b47603
  4. 05 Oct, 2005 13 commits
  5. 04 Oct, 2005 4 commits