1. 04 Dec, 2007 2 commits
  2. 30 Nov, 2007 6 commits
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.1-runtime · 6923c36a
      unknown authored
      into  mysql.com:/Users/davi/mysql/mysql-5.1-runtime
      
      
      6923c36a
    • unknown's avatar
      Merge mysql.com:/Users/davi/mysql/bugs/22312-5.1 · e0770a08
      unknown authored
      into  mysql.com:/Users/davi/mysql/mysql-5.1-runtime
      
      
      e0770a08
    • unknown's avatar
      A patch for BUG#32148: killing a query may be ineffective. · 4b954cc0
      unknown authored
      The problem was that THD::killed was reset after a command was
      read from the socket, but before it was actually handled. That lead
      to a race: if another KILL statement was issued for this connection
      in the middle of reading from the socket and processing a command,
      THD::killed state would be cleaned.
      
      The fix is to move this cleanup into net_send_error() function.
      
      A sample test case exists in binlog_killed.test:
        - connection 1: start a new transaction on table t1;
        - connection 2: send query to the server (w/o waiting for the
          result) to update data in table t1 -- this query will be blocked
          since there is unfinished transaction;
        - connection 1: kill query in connection 2 and finish the transaction;
        - connection 2: get result of the previous query -- it should be
          the "query-killed" error.
      
      This test however contains race condition, which can not be fixed
      with the current protocol: there is no way to guarantee, that the
      server will receive and start processing the query in connection 2
      (which is intended to get blocked) before the KILL command (sent in
      the connection 1) will arrive. In other words, there is no way to
      ensure that the following sequence will not happen:
      
        - connection 1: start a new transaction on table t1;
        - connection 1: kill query in connection 2 and finish the transaction;
        - connection 2: send query to the server (w/o waiting for the
          result) to update data in table t1 -- this query will be blocked
          since there is unfinished transaction;
        - connection 2: get result of the previous query -- the query will
          succeed.
      
      So, there is no test case for this bug, since it's impossible
      to write a reliable test case under the current circumstances.
      
      
      sql/protocol.cc:
        Move thd->killed cleanup from dispatch_command() to net_send_error().
      sql/sql_parse.cc:
        Move thd->killed cleanup from dispatch_command() to net_send_error().
      4b954cc0
    • unknown's avatar
      BUG#32723 (grant3.test fails) can not be reproduced. · 90477e23
      unknown authored
      Enabling the test case.
      
      
      mysql-test/t/disabled.def:
        Enable grant3.test.
      90477e23
    • unknown's avatar
      Bug#22312 Syntax error in expression with INTERVAL() · cdc382e7
      unknown authored
      Parser rejects valid INTERVAL() expressions when associated with
      arithmetic operators. The problem is the way in which the expression
      and interval grammar rules were organized caused shift/reduce conflicts.
      
      The solution is to tweak the interval rules to avoid shift/reduce
      conflicts by removing the broken interval_expr rule and explicitly
      specify it's content where necessary.
      
      Original fix by Davi Arnaut, revised and improved rules by Marc Alff
      
      
      mysql-test/r/parser.result:
        Add test case result for Bug#22312
      mysql-test/t/parser.test:
        Add test case for Bug#22312
      sql/sql_yacc.yy:
        Resolve shift/reduce conflicts by reorganizing the interval
        expression rules.
      cdc382e7
    • unknown's avatar
      A test case for BUG#26676: VIEW using old table schema in a session. · 9395421a
      unknown authored
      The following clarification should be made in The Manual:
      
      Standard SQL is quite clear that, if new columns are added
      to a table after a view on that table is created with
      "select *", the new columns will not become part of the view.
      In all cases, the view definition (view structure) is frozen
      at CREATE time, so changes to the underlying tables do not
      affect the view structure.
      
      
      mysql-test/r/view.result:
        Update result file.
      mysql-test/t/view.test:
        Add a test case for BUG#26676: VIEW using old table schema in a session.
      9395421a
  3. 29 Nov, 2007 1 commit
    • unknown's avatar
      Bug#23713 LOCK TABLES + CREATE TRIGGER + FLUSH TABLES WITH READ LOCK = deadlock · 87143063
      unknown authored
      This bug is actually two bugs in one, one of which is CREATE TRIGGER under
      LOCK TABLES and the other is CREATE TRIGGER under LOCK TABLES simultaneous
      to a FLUSH TABLES WITH READ LOCK (global read lock). Both situations could
      lead to a server crash or deadlock.
      
      The first problem arises from the fact that when under LOCK TABLES, if the
      table is in the set of locked tables, the table is already open and it doesn't
      need to be reopened (not a placeholder). Also in this case, if the table is
      not write locked, a exclusive lock can't be acquired because of a possible
      deadlock with another thread also holding a (read) lock on the table. The
      second issue arises from the fact that one should never wait for a global
      read lock if it's holding any locked tables, because the global read lock
      is waiting for these tables and this leads to a circular wait deadlock.
      
      The solution for the first case is to check if the table is write locked
      and upgraded the write lock to a exclusive lock and fail otherwise for non
      write locked tables. Grabbin the exclusive lock in this case also means
      to ensure that the table is opened only by the calling thread. The second
      issue is partly fixed by not waiting for the global read lock if the thread
      is holding any locked tables.
      
      The second issue is only partly addressed in this patch because it turned
      out to be much wider and also affects other DDL statements. Reported as
      Bug#32395
      
      
      mysql-test/r/trigger.result:
        Add test case result for Bug#23713
      mysql-test/r/trigger_notembedded.result:
        Add test case result for Bug#23713
      mysql-test/t/trigger.test:
        Add test case for Bug#23713
      mysql-test/t/trigger_notembedded.test:
        Add test case for Bug#23713
      sql/mysql_priv.h:
        Locally export wait_while_table_is_used and name_lock_locked_table
        and add flag to mysql_ha_rm_tables to signal that LOCK_open is locked.
      sql/sql_base.cc:
        Introduce name_lock_locked_table function and match
        close_old_data_files function declaration and definition.
      sql/sql_handler.cc:
        Add flag to mysql_ha_rm_tables to signal that LOCK_open is locked.
      sql/sql_rename.cc:
        Fix mysql_ha_rm_tables caller.
      sql/sql_table.cc:
        Export wait_while_table_is_used and assert that LOCK_open is locked
        and fix mysql_ha_rm_tables caller.
      sql/sql_trigger.cc:
        Upgrade write locked tables to a exclusive lock and fail if
        the table is not write locked. Also, don't wait for the global
        read lock if under LOCK TABLES.
      87143063
  4. 28 Nov, 2007 13 commits
  5. 27 Nov, 2007 16 commits
    • unknown's avatar
      Merge stella.local:/home2/mydev/mysql-5.0-axmrg · f0ac4a74
      unknown authored
      into  stella.local:/home2/mydev/mysql-5.1-axmrg
      
      
      client/mysql.cc:
        Auto merged
      mysql-test/r/archive.result:
        Auto merged
      mysql-test/r/ctype_ucs.result:
        Auto merged
      mysql-test/t/archive.test:
        Auto merged
      mysql-test/t/ctype_uca.test:
        Auto merged
      mysql-test/t/ctype_ucs.test:
        Auto merged
      sql/item_cmpfunc.cc:
        Auto merged
      sql/mysqld.cc:
        Auto merged
      sql/sql_class.h:
        Auto merged
      mysql-test/t/disabled.def:
        Manual merge from 5.0
      mysql-test/t/subselect.test:
        Manual merge from 5.0
      f0ac4a74
    • unknown's avatar
      Merge stella.local:/home2/mydev/mysql-5.1-amain · 30aee30b
      unknown authored
      into  stella.local:/home2/mydev/mysql-5.1-axmrg
      
      
      include/my_base.h:
        Auto merged
      mysql-test/mysql-test-run.pl:
        Auto merged
      mysql-test/suite/ndb/t/disabled.def:
        Auto merged
      mysql-test/t/partition.test:
        Auto merged
      sql/handler.cc:
        Auto merged
      sql/item_cmpfunc.cc:
        Auto merged
      sql/slave.cc:
        Auto merged
      sql/sql_insert.cc:
        Auto merged
      sql/sql_parse.cc:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      sql/sql_table.cc:
        Auto merged
      sql/sql_yacc.yy:
        Auto merged
      client/mysql.cc:
        Manual merge
      mysql-test/suite/rpl/t/disabled.def:
        Manual merge
      30aee30b
    • unknown's avatar
      Merge stella.local:/home2/mydev/mysql-5.0-ateam · 8a7f5a1d
      unknown authored
      into  stella.local:/home2/mydev/mysql-5.0-axmrg
      
      
      8a7f5a1d
    • unknown's avatar
      after-merge fixup: archive test/result adjusted. · 1a73853c
      unknown authored
      1a73853c
    • unknown's avatar
      Merge stella.local:/home2/mydev/mysql-5.0-ateam · 76468de8
      unknown authored
      into  stella.local:/home2/mydev/mysql-5.0-axmrg
      
      
      76468de8
    • unknown's avatar
      Bug#8693 Test 'rpl_log_pos' fails sometimes · ae5ff26d
      unknown authored
      Disabled the test case.
      
      
      ae5ff26d
    • unknown's avatar
      Merge mysql.com:/home/ram/work/mysql-5.0-engines · 061ac497
      unknown authored
      into  mysql.com:/home/ram/work/b30495/b30495.5.0
      
      
      061ac497
    • unknown's avatar
      Merge lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.1-base · 8bfcdce0
      unknown authored
      into  lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.1-rt-merge
      
      
      sql/mysqld.cc:
        Auto merged
      sql/sp_head.cc:
        Auto merged
      sql/sql_class.cc:
        Auto merged
      sql/sql_parse.cc:
        Auto merged
      sql/sql_table.cc:
        Auto merged
      sql/sql_yacc.yy:
        Auto merged
      8bfcdce0
    • unknown's avatar
      Merge mysql.com:/home/ram/work/mysql-5.1-engines · 9f1043b5
      unknown authored
      into  mysql.com:/home/ram/work/b30495/b30495.5.1
      
      
      9f1043b5
    • unknown's avatar
      Merge lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.0-base · 77ab800e
      unknown authored
      into  lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.0-rt-merge
      
      
      sql/mysqld.cc:
        Auto merged
      sql/sp_head.cc:
        Auto merged
      sql/sql_parse.cc:
        Auto merged
      77ab800e
    • unknown's avatar
      Merge stella.local:/home2/mydev/mysql-5.0-amain · 6288fde2
      unknown authored
      into  stella.local:/home2/mydev/mysql-5.0-axmrg
      
      
      sql/item_cmpfunc.cc:
        Auto merged
      6288fde2
    • unknown's avatar
      Merge mysql.com:/home/ram/work/mysql-5.0-engines · 51e24c02
      unknown authored
      into  mysql.com:/home/ram/work/b30495/b30495.5.0
      
      
      51e24c02
    • unknown's avatar
      Disabling several tests that fail and reported as errors. · 54953ec2
      unknown authored
      
      mysql-test/suite/ndb/t/disabled.def:
        Disabling failing tests.
      mysql-test/suite/rpl/t/disabled.def:
        Disabling failing tests.
      mysql-test/suite/rpl/t/rpl_ssl.test:
        Disabling part of test that fails.
      54953ec2
    • unknown's avatar
      after-merge fix: · 42853d17
      unknown authored
        - archive test/result adjusted.
        - OPTIMIZE/ANALYZE PARTITION EXTENDED test case added.
      
      
      mysql-test/r/archive.result:
        after-merge fix:
          - archive test/result adjusted.
      mysql-test/r/partition.result:
        after-merge fix:
          - test case added.
      mysql-test/t/archive.test:
        after-merge fix:
          - archive test/result adjusted.
      mysql-test/t/partition.test:
        after-merge fix:
          - test case added.
      42853d17
    • unknown's avatar
      Bug#32754 - InnoDB tests do not prepare or clean up correctly · 8784957e
      unknown authored
      Some test cases were missing preparation to deal with failed
      predecessor test cases.
      
      Added preparation (drop table if exists) to some test cases.
      
      
      mysql-test/include/innodb_rollback_on_timeout.inc:
        Bug#32754 - InnoDB tests do not prepare or clean up correctly
        Added preparation (drop table if exists).
      mysql-test/r/innodb-semi-consistent.result:
        Bug#32754 - InnoDB tests do not prepare or clean up correctly
        Fixed test result.
      mysql-test/r/innodb-ucs2.result:
        Bug#32754 - InnoDB tests do not prepare or clean up correctly
        Fixed test result.
      mysql-test/r/innodb_mysql.result:
        Bug#32754 - InnoDB tests do not prepare or clean up correctly
        Fixed test result.
      mysql-test/r/innodb_timeout_rollback.result:
        Bug#32754 - InnoDB tests do not prepare or clean up correctly
        Fixed test result.
      mysql-test/t/innodb-semi-consistent.test:
        Bug#32754 - InnoDB tests do not prepare or clean up correctly
        Added preparation (drop table if exists).
      mysql-test/t/innodb-ucs2.test:
        Bug#32754 - InnoDB tests do not prepare or clean up correctly
        Added preparation (drop table if exists).
      8784957e
    • unknown's avatar
      Merge mysql.com:/home/ram/work/b30495/b30495.5.0 · 7eb5a83d
      unknown authored
      into  mysql.com:/home/ram/work/b30495/b30495.5.1
      
      
      mysql-test/r/analyze.result:
        Auto merged
      mysql-test/t/analyze.test:
        Auto merged
      sql/sql_yacc.yy:
        5.0 -> 5.1 manual merging (see bug #30495: optimize table t1,t2,t3 extended errors):
        CHECK options disabled for ANALYZE/OPTIMIZE PARTITION.
      7eb5a83d
  6. 26 Nov, 2007 2 commits