1. 17 Oct, 2005 1 commit
    • unknown's avatar
      Fix for bug #12739 "Deadlock in multithreaded environment during creating/ · dd02b98d
      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).
      dd02b98d
  2. 07 Oct, 2005 7 commits
  3. 06 Oct, 2005 15 commits
    • unknown's avatar
      make_binary_distribution.sh: · 2d017ee8
      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
      2d017ee8
    • unknown's avatar
      make_binary_distribution.sh: · 707a4b65
      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
      707a4b65
    • unknown's avatar
      Merge mysql.com:/home/dellis/mysqlab/bk/local_mysql-4.1 · 979446f3
      unknown authored
      into  mysql.com:/home/dellis/mysqlab/bk/mysql-5.0
      
      
      979446f3
    • unknown's avatar
      Merge dellis@bk-internal.mysql.com:/home/bk/mysql-4.1 · f306c37c
      unknown authored
      into  mysql.com:/home/dellis/mysqlab/bk/mysql-4.1
      
      
      f306c37c
    • unknown's avatar
      Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-5.0 · 1b7de584
      unknown authored
      into  ua141d10.elisa.omakaista.fi:/home/my/bk/mysql-5.0
      
      
      1b7de584
    • unknown's avatar
      Fixed a bug in argument sending to get_one_option. · 598d6422
      unknown authored
      Fixed documentation for findopt().
      Cleaned code a bit.
      
      
      598d6422
    • unknown's avatar
      don't "init" binlog if opt_bin_log is not set · 970150d1
      unknown authored
      (bug#13791 - mysqld crashes at startup in TC_LOG_MMAP::open)
      
      
      970150d1
    • unknown's avatar
      make_binary_distribution.sh: · 78f5997a
      unknown authored
        Replaced --machine with --platform
        General code cleanup
      
      
      scripts/make_binary_distribution.sh:
        Replaced --machine with --platform
        General code cleanup
      78f5997a
    • unknown's avatar
      Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-4.1 · 9b313efd
      unknown authored
      into mysql.com:/home/gluh/MySQL/Bugs/4.1.13605
      
      
      9b313efd
    • unknown's avatar
      Fix for bug#13605 'rpl_openssl' test hangs · 07daa795
      unknown authored
      07daa795
    • unknown's avatar
      Merge · 94a83fe2
      unknown authored
      94a83fe2
    • unknown's avatar
      Merge msdesk.(none):/home/msvensson/mysql-4.1 · df764507
      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
      df764507
    • unknown's avatar
      item_cmpfunc.cc: · e6ec5794
      unknown authored
        Wrong variable.
      
      
      sql/item_cmpfunc.cc:
        Wrong variable.
      e6ec5794
    • unknown's avatar
      ndb - prelim perl scripts to autotest · 6efe6012
      unknown authored
      
      BitKeeper/deleted/.del-ndb_range_bounds.pl~ff7e47a35fb44c74:
        Delete: mysql-test/ndb/ndb_range_bounds.pl
      6efe6012
    • unknown's avatar
      my_pthread.h: · 3c2dca47
      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
      3c2dca47
  4. 05 Oct, 2005 13 commits
  5. 04 Oct, 2005 4 commits