1. 03 Oct, 2006 1 commit
    • unknown's avatar
      Bug #14262: SP: DROP PROCEDURE|VIEW (maybe more) write to binlog too late \ · e6eef5c1
      unknown authored
      	(race cond)
      
      It was possible for one thread to interrupt a Data Definition Language 
      statement and thereby get messages to the binlog out of order.  Consider:
      
      Connection 1: Drop Foo x
      Connection 2: Create or replace Foo x
      Connection 2: Log "Create or replace Foo x"
      Connection 1: Log "Drop Foo x"
      
      Local end would have Foo x, but the replicated slaves would not.
      
      The fix for this is to wrap all DDL and logging of a kind in the same mutex.  
      Since we already use mutexes for the various parts of altering the server, 
      this only entails moving the logging events down close to the action, inside 
      the mutex protection.
      
      
      BitKeeper/etc/collapsed:
        BitKeeper file /home/cmiller/work/mysql/bug14262/my50-bug14262/BitKeeper/etc/collapsed
        ---
        BitKeeper file /home/cmiller/work/mysql/bug14262/my50-bug14262/BitKeeper/etc/collapsed
        ---
        BitKeeper file /home/cmiller/work/mysql/bug14262/my50-bug14262/BitKeeper/etc/collapsed
        ---
        BitKeeper file /home/cmiller/work/mysql/bug14262/my50-bug14262/BitKeeper/etc/collapsed
        ---
        BitKeeper file /home/cmiller/work/mysql/bug14262/my50-bug14262/BitKeeper/etc/collapsed
        ---
        BitKeeper file /home/cmiller/work/mysql/bug14262/my50-bug14262/BitKeeper/etc/collapsed
        ---
        BitKeeper file /home/cmiller/work/mysql/bug14262/my50-bug14262/BitKeeper/etc/collapsed
        ---
        BitKeeper file /home/cmiller/work/mysql/bug14262/my50-bug14262/BitKeeper/etc/collapsed
      sql/sp.cc:
        Move logging inside the routine drop and update functions, so it can be 
        protected by a LOCK_open mutex.  (The "create" function already had such 
        a LOCK_open protection.)
      sql/sql_acl.cc:
        Move logging inside the grant functions, so that it can be protected by 
        LOCK_grant .
      sql/sql_db.cc:
        Add comments that describe how each logging event is protected.
      sql/sql_parse.cc:
        Move all logging statements about DDL statements close to the actual event, 
        so each can be protected by the same mutex.
      sql/sql_table.cc:
        Widen the scope of the mutex so that logging events are also protected.
      sql/sql_trigger.cc:
        Widen the scope of the mutex so that logging events are also protected.
      sql/sql_view.cc:
        Pass the head of the table linked-list so we can create a logging statement.
        
        Move the logging statement inside the worker function, and notably inside 
        the LOCK_open mutex.  Widen the same mutex a little to make room for logging.
      sql/sql_view.h:
        Pass the head of the table linked-list so we can create a logging statement.
      e6eef5c1
  2. 01 Sep, 2006 1 commit
    • unknown's avatar
      mtr_cases.pl: · 9e145670
      unknown authored
        Provide a more extensible, easier-to-change way of reordering
        test cases.
      
      
      mysql-test/lib/mtr_cases.pl:
        Provide a more extensible, easier-to-change way of reordering
        test cases.
      9e145670
  3. 15 Aug, 2006 1 commit
    • unknown's avatar
      Bug #20908: Crash if select @@"" · e0bffad3
      unknown authored
      Zero-length variables caused failures when using the length to look
      up the name in a hash.  Instead, signal that no zero-length name can
      ever be found and that to encounter one is a syntax error.
      
      
      mysql-test/r/variables.result:
        Results for test.
      mysql-test/t/variables.test:
        Insert tests to prove that zero-length variable names do not cause
        faults.
      sql/gen_lex_hash.cc:
        If the length is zero, then there is nothing to look-up in the 
        hash.
      sql/sql_lex.cc:
        Names of variables must not be empty.  Signal an error of that 
        happens.
      e0bffad3
  4. 01 Aug, 2006 3 commits
    • unknown's avatar
      Applied innodb-5.0-ss677 snapshot. · 75e40b16
      unknown authored
      Fixes:
      - bug #19834: Using cursors when running in READ-COMMITTED can cause InnoDB to crash
      - bug #21112: InnoDB slow with > 100,000 .ibd files
      - bug #21113: Duplicate printout in SHOW INNODB STATUS
      
      
      innobase/fil/fil0fil.c:
        Applied innodb-5.0-ss677 snapshot.
          Make the tablespace cache hash size 100 or 1000 times bigger. Fixes bug #21112.
      innobase/ibuf/ibuf0ibuf.c:
        Applied innodb-5.0-ss677 snapshot.
          ibuf_print(): Don't print redundant information. Fixes bug #21113.
      sql/ha_innodb.cc:
        Applied innodb-5.0-ss677 snapshot.
          ha_innobase::start_stmt(): patch from Heikki:
          Do not call read_view_close_for_mysql().  (Bug #19834)
      75e40b16
    • unknown's avatar
      Merge mysql.com:/users/lthalmann/bkroot/mysql-5.0 · edeea349
      unknown authored
      into  mysql.com:/users/lthalmann/bk/MERGE/mysql-5.0-merge
      
      
      edeea349
    • unknown's avatar
      Merge mysql.com:/users/lthalmann/bk/MERGE/mysql-4.1-merge · f3099ba3
      unknown authored
      into  mysql.com:/users/lthalmann/bk/MERGE/mysql-5.0-merge
      
      
      f3099ba3
  5. 31 Jul, 2006 2 commits
  6. 29 Jul, 2006 6 commits
    • unknown's avatar
      Merge mysql.com:/Users/kent/mysql/bk/mysql-4.1 · 10888499
      unknown authored
      into  mysql.com:/Users/kent/mysql/bk/mysql-5.0
      
      
      configure.in:
        Auto merged
      10888499
    • unknown's avatar
      Merge mysql.com:/Users/kent/mysql/bk/mysql-4.0 · 66716f09
      unknown authored
      into  mysql.com:/Users/kent/mysql/bk/mysql-4.1
      
      
      configure.in:
        Auto merged
      66716f09
    • unknown's avatar
      configure.in: · 189a6879
      unknown authored
        Corrected typo
      
      
      configure.in:
        Corrected typo
      189a6879
    • unknown's avatar
      Fix after manual merge. · 1d0f873d
      unknown authored
      
      tests/mysql_client_test.c:
        Fix after manual merge: add test for bug#21206.
      1d0f873d
    • unknown's avatar
      Merge moonlight.intranet:/home/tomash/src/mysql_ab/tmp_merge · 74214b86
      unknown authored
      into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-merge
      
      
      configure.in:
        Auto merged
      man/Makefile.am:
        Auto merged
      mysys/my_bitmap.c:
        Auto merged
      scripts/make_binary_distribution.sh:
        Auto merged
      sql/field.cc:
        Auto merged
      sql/sql_locale.cc:
        Auto merged
      support-files/mysql.spec.sh:
        Auto merged
      mysql-test/t/mysqlbinlog.test:
        Manual merge.
      sql/sql_select.cc:
        Manual merge.
      74214b86
    • unknown's avatar
      udf_example.c, udf.test, Makefile.am: · 3c9ba020
      unknown authored
        Converted "udf_example.cc" to C, avoids C++ runtime lib dependency (bug#21336)
      
      
      sql/Makefile.am:
        "udf_example.cc" converted to C, avoids C++ runtime lib dependency (bug#21336)
      mysql-test/t/udf.test:
        "udf_example.cc" converted to C, avoids C++ runtime lib dependency (bug#21336)
      sql/udf_example.c:
        Changes to be strict ansi, except long long
      3c9ba020
  7. 28 Jul, 2006 9 commits
    • unknown's avatar
      Merge mysql.com:/Users/kent/mysql/bk/mysql-4.0 · 04d60b38
      unknown authored
      into  mysql.com:/Users/kent/mysql/bk/mysql-4.1
      
      
      configure.in:
        Auto merged
      scripts/make_binary_distribution.sh:
        Auto merged
      support-files/mysql.spec.sh:
        SCCS merged
      04d60b38
    • unknown's avatar
      Makefile.am, configure.in: · d1fde0f7
      unknown authored
        Man page for mysqld command move to section 8 (bug#21220)
      
      
      configure.in:
        Man page for mysqld command move to section 8 (bug#21220)
      man/Makefile.am:
        Man page for mysqld command move to section 8 (bug#21220)
      d1fde0f7
    • unknown's avatar
      make_binary_distribution.sh: · 6f65bffe
      unknown authored
        Man page for "mysqld" command move to section 8 (bug#21220)
      
      
      scripts/make_binary_distribution.sh:
        Man page for "mysqld" command move to section 8 (bug#21220)
      6f65bffe
    • unknown's avatar
      mysql.spec.sh: · a811cc0a
      unknown authored
        Man page for "mysqld" command move to section 8 (bug#21220)
      
      
      support-files/mysql.spec.sh:
        Man page for "mysqld" command move to section 8 (bug#21220)
      a811cc0a
    • unknown's avatar
      Merge mysql.com:/Users/kent/mysql/bk/tmp_merge · 8c4ba968
      unknown authored
      into  mysql.com:/Users/kent/mysql/bk/mysql-5.0-new
      
      
      netware/BUILD/mwasmnlm:
        Auto merged
      netware/BUILD/mwccnlm:
        Auto merged
      netware/BUILD/mwldnlm:
        Auto merged
      8c4ba968
    • unknown's avatar
      Merge kboortz@bk-internal.mysql.com:/home/bk/mysql-5.0 · 77831e75
      unknown authored
      into  mysql.com:/Users/kent/mysql/bk/mysql-5.0-new
      
      
      sql/sql_select.cc:
        Auto merged
      77831e75
    • unknown's avatar
      sql_select.cc: · 8d73c0b3
      unknown authored
        Renamed variable, to avoid name clash with macro "rem_size"
        on AIX 5.3 and "/usr/include/sys/xmem.h" (bug#17648)
      asn.cpp, asn.hpp:
        Avoid name clash with NAME_MAX
      
      
      sql/sql_select.cc:
        Renamed variable, to avoid name clash with macro "rem_size"
        on AIX 5.3 and "/usr/include/sys/xmem.h" (bug#17648)
      extra/yassl/taocrypt/src/asn.cpp:
        Avoid name clash with NAME_MAX
      extra/yassl/taocrypt/include/asn.hpp:
        Avoid name clash with NAME_MAX
      8d73c0b3
    • unknown's avatar
      Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-5.0 · 19860930
      unknown authored
      into  maint1.mysql.com:/data/localhome/tsmith/bk/global-50
      
      
      19860930
    • unknown's avatar
      Removing temporary changes. · 78e24656
      unknown authored
      78e24656
  8. 27 Jul, 2006 5 commits
    • unknown's avatar
    • unknown's avatar
      Revert the change after null-merge. · c4cfa9ab
      unknown authored
      
      mysys/my_bitmap.c:
        Revert the change forced during null-merge.
      c4cfa9ab
    • unknown's avatar
      Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-release · 350cc461
      unknown authored
      into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-main
      
      
      sql/sql_select.cc:
        Null-merge
      tests/mysql_client_test.c:
        Null-merge
      350cc461
    • unknown's avatar
      BUG#21206: memory corruption when too many cursors are opened at once · 7dbd43b1
      unknown authored
      Too many cursors (more than 1024) could lead to memory corruption.
      This affects both, stored routines and C API cursors, and the
      threshold is per-server, not per-connection.  Similarly, the
      corruption could happen when the server was under heavy load
      (executing more than 1024 simultaneous complex queries), and this is
      the reason why this bug is fixed in 4.1, which doesn't support
      cursors.
      
      The corruption was caused by a bug in the temporary tables code, when
      an attempt to create a table could lead to a write beyond allocated
      space.  Note, that only internal tables were affected (the tables
      created internally by the server to resolve the query), not tables
      created with CREATE TEMPORARY TABLE.  Another pre-condition for the
      bug is TRUE value of --temp-pool startup option, which, however, is a
      default.
      
      The cause of a bug was that random memory was overwritten in
      bitmap_set_next() due to out-of-bound memory access.
      
      
      mysys/my_bitmap.c:
        Local 'bitmap_size' is measured in bytes, no need to multiply it by 8.
      sql/sql_select.cc:
        Clear the temp_pool_slot bit only if we have set it previously.
      tests/mysql_client_test.c:
        Add test case for bug#21206: memory corruption when too many cursors
        are opened at once.
      7dbd43b1
    • unknown's avatar
      Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-release · a6557b0c
      unknown authored
      into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-main
      
      
      VC++Files/sql/mysqld.vcproj:
        Auto merged
      mysql-test/mysql-test-run.pl:
        Auto merged
      mysql-test/r/sp.result:
        Auto merged
      mysql-test/r/warnings.result:
        Auto merged
      mysql-test/t/warnings-master.opt:
        Auto merged
      mysql-test/t/warnings.test:
        Auto merged
      sql/handler.cc:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/mysqld.cc:
        Auto merged
      sql/set_var.cc:
        Auto merged
      sql/sql_class.cc:
        Auto merged
      sql/sql_class.h:
        Auto merged
      sql/sql_parse.cc:
        Auto merged
      a6557b0c
  9. 26 Jul, 2006 5 commits
    • unknown's avatar
      Merge siva.hindu.god:/usr/home/tim/m/bk/global-41 · b6027291
      unknown authored
      into  siva.hindu.god:/usr/home/tim/m/bk/global-50
      
      
      mysql-test/r/func_time.result:
        Auto merged
      mysql-test/t/func_time.test:
        Auto merged
      sql/field.cc:
        Auto merged
      b6027291
    • unknown's avatar
      BUG#21206: memory corruption when too many cursors are opened at once · 35945019
      unknown authored
      Too many cursors (more than 1024) could lead to memory corruption.
      This affects both, stored routines and C API cursors, and the
      threshold is per-server, not per-connection.  Similarly, the
      corruption could happen when the server was under heavy load
      (executing more than 1024 simultaneous complex queries), and this is
      the reason why this bug is fixed in 4.1, which doesn't support
      cursors.
      
      The corruption was caused by a bug in the temporary tables code, when
      an attempt to create a table could lead to a write beyond allocated
      space.  Note, that only internal tables were affected (the tables
      created internally by the server to resolve the query), not tables
      created with CREATE TEMPORARY TABLE.  Another pre-condition for the
      bug is TRUE value of --temp-pool startup option, which, however, is a
      default.
      
      The cause of a bug was that random memory was overwritten in
      bitmap_set_next() due to out-of-bound memory access.
      
      
      mysys/my_bitmap.c:
        Local 'bitmap_size' is measured in bytes, no need to multiply it by 8.
      sql/sql_select.cc:
        Clear the temp_pool_slot bit only if we have set it previously.
      35945019
    • unknown's avatar
      Applied innodb-5.0-ss660 snapshot. · 820840a0
      unknown authored
      
      innobase/btr/btr0cur.c:
        Applied innodb-5.0-ss660 snapshot.
         btr_cur_search_to_nth_level(): Reacquire btr_search_latch after
         inserting to the insert buffer. This was noticed while analyzing
         Bug#19081 but this shold not fix this bug since according to
         Heikki, btr_search_latch is not reserved during an insert.
      innobase/ibuf/ibuf0ibuf.c:
        Applied innodb-5.0-ss660 snapshot.
         ibuf_fixed_addr_page(): Add parameter space. As the insert buffer
         B-tree is only located in the system tablespace (space 0),
         IBUF_TREE_ROOT_PAGE_NO is only special in space 0.
      innobase/include/sync0rw.ic:
        Applied innodb-5.0-ss660 snapshot.
         rw_lock_s_unlock_func(): Change a debug assertion to a
         production assertion in order to track down Bug#19081.
      820840a0
    • unknown's avatar
      Merge mysql.com:/home/alexi/innodb/mysql-4.1-work · d8bb59fc
      unknown authored
      into  mysql.com:/home/alexi/innodb/mysql-5.0-work
        Null merge.
      
      
      innobase/ibuf/ibuf0ibuf.c:
        Null merge.
      d8bb59fc
    • unknown's avatar
      Applied innodb-4.1-ss32 snapshot. · 03637f49
      unknown authored
      
      innobase/ibuf/ibuf0ibuf.c:
        Applied innodb-4.1-ss32 snapshot.
         ibuf_fixed_addr_page(): Add parameter space. As the insert
         buffer B-tree is only located in the system tablespace
         (space 0), IBUF_TREE_ROOT_PAGE_NO is only special in space 0.
      03637f49
  10. 25 Jul, 2006 3 commits
    • unknown's avatar
      "mysql-test-run.pl" must write a "Logging:" line for the evaluation of RPM build tests. · b0b0c8cc
      unknown authored
          (Re-apply a patch from the general tree to the clone.)
      
      
      mysql-test/mysql-test-run.pl:
        "mysql-test-run.pl" must write a "Logging:" line for the evaluation of RPM build tests.
        (Re-apply a patch from the general tree to the clone.)
      b0b0c8cc
    • unknown's avatar
      slave.cc: · cd64ea0e
      unknown authored
            BUG#20850: Assert during slave shutdown in many rpl_* tests
            This patch has already been applied to 5.1.
      
      
      sql/slave.cc:
            BUG#20850: Assert during slave shutdown in many rpl_* tests
            This patch has already been applied to 5.1.
      cd64ea0e
    • unknown's avatar
      Merge mysql.com:/home/hf/work/mysql-4.1.mrg · 39486004
      unknown authored
      into  mysql.com:/home/hf/work/mysql-5.0.mrg
      
      
      libmysqld/lib_sql.cc:
        Auto merged
      tests/mysql_client_test.c:
        merging
      39486004
  11. 24 Jul, 2006 4 commits
    • unknown's avatar
      Merge jbruehe@bk-internal.mysql.com:/home/bk/mysql-4.1 · c939a8d7
      unknown authored
      into  trift2.:/M41/push-4.1
      
      
      c939a8d7
    • unknown's avatar
      Merge trift2.:/M41/clone-4.1 · 75220954
      unknown authored
      into  trift2.:/M41/push-4.1
      
      
      sql/field.cc:
        Auto merged
      sql/sql_locale.cc:
        Changes were already present (and even better) == Null-merge == "ul".
      75220954
    • unknown's avatar
      Bug#21218 Test "mysqlbinlog" fails to execute another program on Windows · def55c52
      unknown authored
       - Send confusing output to /dev/null
      
      
      mysql-test/t/mysqlbinlog.test:
        Send confusing error messages to /dev/null so they don't appear in erro log if test case fails
      def55c52
    • unknown's avatar
      Merge trift2.:/M41/clone-4.1 · d6d59830
      unknown authored
      into  trift2.:/M50/merge-4.1-to-5.0
      
      
      VC++Files/libmysqld/libmysqld.dsp:
        Auto merged
      VC++Files/libmysqld/libmysqld.vcproj:
        Auto merged
      VC++Files/libmysqld/libmysqld_ia64.dsp:
        Auto merged
      VC++Files/mysqldemb/mysqldemb.dsp:
        Auto merged
      VC++Files/sql/mysqld.dsp:
        Auto merged
      VC++Files/sql/mysqld.vcproj:
        Auto merged
      VC++Files/sql/mysqld_ia64.dsp:
        Auto merged
      VC++Files/sql/mysqldmax.dsp:
        Auto merged
      sql/field.cc:
        Merge a backport == Null-merge == "ul".
      sql/field.h:
        Merge a backport == Null-merge == "ul".
      sql/sql_locale.cc:
        Changes were already present (and even better) == Null-merge == "ul".
      d6d59830