1. 06 Feb, 2009 6 commits
  2. 05 Feb, 2009 13 commits
    • Gleb Shchepa's avatar
      d5f99c0d
    • Matthias Leich's avatar
      Fix for Bug#42602 main.status: random failures · 1afb6a0e
      Matthias Leich authored
      + minor improvements
      1afb6a0e
    • Gleb Shchepa's avatar
      after-push test update (bug #39265) · 7bb8b32d
      Gleb Shchepa authored
      7bb8b32d
    • Alexey Kopytov's avatar
      2094822a
    • Alexey Kopytov's avatar
      Merge to team tree. · 1eb14730
      Alexey Kopytov authored
      1eb14730
    • Alexey Kopytov's avatar
      Merge from team tree. · a0566e5e
      Alexey Kopytov authored
      a0566e5e
    • Gleb Shchepa's avatar
      Bug #39265: fix for the bug 33699 should be reverted · bce55632
      Gleb Shchepa authored
      Documented behaviour was broken by the patch for bug 33699
      that actually is not a bug.
      
      This fix reverts patch for bug 33699 and reverts the
      UPDATE of NOT NULL field with NULL query to old
      behavior.
      
      
      mysql-test/extra/rpl_tests/rpl_extraMaster_Col.test:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/include/ps_modify.inc:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/r/auto_increment.result:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/r/csv_not_null.result:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/r/null.result:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/r/ps_2myisam.result:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/r/ps_3innodb.result:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/r/ps_4heap.result:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/r/ps_5merge.result:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/r/warnings.result:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/suite/ndb/r/ps_7ndb.result:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/suite/rpl/r/rpl_extraColmaster_innodb.result:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/suite/rpl/r/rpl_extraColmaster_myisam.result:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/suite/rpl/t/rpl_err_ignoredtable.test:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/t/auto_increment.test:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/t/csv_not_null.test:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/t/null.test:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/t/warnings.test:
        Bug #39265: fix for the bug 33699 should be reverted
      sql/sql_update.cc:
        Bug #39265: fix for the bug 33699 should be reverted
      bce55632
    • Gleb Shchepa's avatar
      b673b8ab
    • Gleb Shchepa's avatar
      Bug #42037: Queries containing a subquery with DISTINCT and · 31f74831
      Gleb Shchepa authored
                  ORDER BY could cause a server crash
      
      Dependent subqueries like
      
        SELECT COUNT(*) FROM t1, t2 WHERE t2.b
         IN (SELECT DISTINCT t2.b FROM t2 WHERE t2.b = t1.a)
      
      caused a memory leak proportional to the
      number of outer rows.
      
      
      The make_simple_join() function has been modified to
      JOIN class method to store join_tab_reexec and
      table_reexec values in the parent join only
      (make_simple_join of tmp_join may access these values
      via 'this' pointer of the parent JOIN).
      
      NOTE: this patch doesn't include standard test case (this is
      "out of memory" bug). See bug #42037 page for test cases.
      
      
      sql/sql_select.cc:
        Bug #42037: Queries containing a subquery with DISTINCT and
                    ORDER BY could cause a server crash
        
        The make_simple_join() function has been modified to
        JOIN class method to store join_tab_reexec and
        table_reexec values in the parent join only.
      sql/sql_select.h:
        Bug #42037: Queries containing a subquery with DISTINCT and
                    ORDER BY could cause a server crash
        
        1. The make_simple_join() function has been modified to
           JOIN class method.
        
        2. Type of JOIN::table_reexec field has been changed from
           TABLE** to TABLE *table_reexec[1]: this field always was
           NULL or a pointer to one-element array of pointers, so
           a pointer to a pointer has been replaced with one pointer
           and unnecessary memory allocation has been eliminated.
      31f74831
    • Ramil Kalimullin's avatar
      Fix for bug#42014: Crash, name_const with collate · 91d23568
      Ramil Kalimullin authored
      Problem: some queries using NAME_CONST(.. COLLATE ...)
      lead to server crash due to failed type cast.
      
      Fix: return the underlying item's type in case of
      NAME_CONST(.. COLLATE ...) to avoid wrong casting.
      
      
      mysql-test/r/func_misc.result:
        Fix for bug#42014: Crash, name_const with coll
          - test result.
      mysql-test/t/func_misc.test:
        Fix for bug#42014: Crash, name_const with coll
          - test case.
      sql/item.cc:
        Fix for bug#42014: Crash, name_const with coll
          - in case of NAME_CONST('name', 'value' COLLATE collation)
        Item_name_const::type() returns type of 'value' argument 
        to awoid wrong type casting of the Item_name_const items.
      91d23568
    • Alexey Botchkov's avatar
      merging · 9ce712cb
      Alexey Botchkov authored
      9ce712cb
    • Ramil Kalimullin's avatar
      Auto-merge · f73efac9
      Ramil Kalimullin authored
      f73efac9
    • Alexey Botchkov's avatar
      Bug#37995 Error message truncation in test "innodb" in embedded mode. · 84618fe0
      Alexey Botchkov authored
         code backported from 6.0
      
      
      per-file messages:
        include/my_global.h
          Remove SC_MAXWIDTH. This is unused and irrelevant nowadays.
        include/my_sys.h
          Remove errbuf declaration and unused definitions.
        mysys/my_error.c
          Remove errbuf definition and move and adjust ERRMSGSIZE.
        mysys/my_init.c
          Declare buffer on the stack and use my_snprintf.
        mysys/safemalloc.c
          Use size explicitly. It's more than enough for the message at hand.
        sql/sql_error.cc
          Use size explicitly. It's more than enough for the message at hand.
        sql/sql_parse.cc
          Declare buffer on the stack. Use my_snprintf as it will result in
          less stack space being used than by a system provided sprintf --
          this allows us to put the buffer on the stack without causing much
          trouble. Also, the use of errbuff here was not thread-safe as the
          function can be entered concurrently from multiple threads.
        sql/sql_table.cc
          Use MYSQL_ERRMSG_SIZE. Extra space is not needed as my_snprintf will
          nul terminate strings.
        storage/myisam/ha_myisam.cc
      Use MYSQL_ERRMSG_SIZE.
        sql/share/errmsg.txt
          Error message truncation in test "innodb" in embedded mode
          filename in the error message can safely take up to 210 symbols.
      84618fe0
  3. 04 Feb, 2009 18 commits
    • Chad MILLER's avatar
      Merge from team tree. · a0d88146
      Chad MILLER authored
      a0d88146
    • Chad MILLER's avatar
      Merge from 5.0-bugteam. · f1232a97
      Chad MILLER authored
      f1232a97
    • Alfranio Correia's avatar
      auto-merge for BUG#42445. · be2a4ff5
      Alfranio Correia authored
      be2a4ff5
    • Chad MILLER's avatar
      Merge from bug tree. · 9b93c268
      Chad MILLER authored
      9b93c268
    • Matthias Leich's avatar
    • Matthias Leich's avatar
      f8412b84
    • Sergey Vojtovich's avatar
      Merge 5.0-bugteam -> 5.1-bugteam. · cdd9844a
      Sergey Vojtovich authored
      cdd9844a
    • Matthias Leich's avatar
      Automatic merge, no conflicts · 04614a9f
      Matthias Leich authored
      04614a9f
    • Magnus Svensson's avatar
      Merge · 2f0f4716
      Magnus Svensson authored
      2f0f4716
    • Matthias Leich's avatar
      Merge last changesets, no conflicts · 5a876877
      Matthias Leich authored
      5a876877
    • Staale Smedseng's avatar
      merge from upstream 5.1-bugteam · 47e5ad66
      Staale Smedseng authored
      47e5ad66
    • Sergey Vojtovich's avatar
      BUG#32047 - 'Spurious' errors while opening MERGE tables · 8819e71c
      Sergey Vojtovich authored
      Accessing well defined MERGE table may return an error
      stating that the merge table is incorrectly defined. This
      happens if MERGE child tables were accessed before and we
      failed to open another incorrectly defined MERGE table in
      this connection.
      
      myrg_open() internally used my_errno as a variable for determining
      failure, and thus could be tricked into a wrong decision by other
      uses of my_errno.
      
      With this fix we use function local boolean flag instead of my_errno
      to determine failure.
      
      myisammrg/myrg_open.c:
        There are two requirement for accessing/setting my_errno variable,
        which were not followed by myrg_open():
        - it must be checked immediately after a function returned an error. There
          must be no calls to other functions that may change it's value between.
        - my_errno value must be set right before a function is going to return an
          error. There must be no calls to other functions that may change it's
          value between (that's why we have these tricks with save_errno at the
          bottom of myrg_open()).
        
        myrg_open() internally used my_errno as a variable for determining
        failure, and thus could be tricked into a wrong decision by other
        uses of my_errno.
      mysql-test/r/merge.result:
        A test case for BUG#32047.
      mysql-test/t/merge.test:
        A test case for BUG#32047.
      8819e71c
    • Sergey Glukhov's avatar
      Bug#42495 updatexml: Assertion failed: xpath->context, file .\item_xmlfunc.cc, line 2507 · fe14a7be
      Sergey Glukhov authored
      Problem:
         RelativeLocationPath can appear only after a node-set expression
         in the third and the fourth branches of this rule:
           PathExpr :: =  LocationPath
                          | FilterExpr
                          | FilterExpr '/' RelativeLocationPath
                          | FilterExpr '//' RelativeLocationPath
         XPatch code didn't check the type of FilterExpr and crashed.
      Fix:
         If FilterExpr is a scalar expression
         (variable reference, literal, number, scalar function call)
         return error.
      
      
      mysql-test/r/xml.result:
        test result
      mysql-test/t/xml.test:
        test case
      sql/item_xmlfunc.cc:
        Problem:
           RelativeLocationPath can appear only after a node-set expression
           in the third and the fourth branches of this rule:
             PathExpr :: =  LocationPath
                            | FilterExpr
                            | FilterExpr '/' RelativeLocationPath
                            | FilterExpr '//' RelativeLocationPath
           XPatch code didn't check the type of FilterExpr and crashed.
        Fix:
           If FilterExpr is a scalar expression
           (variable reference, literal, number, scalar function call)
           return error.
      fe14a7be
    • Davi Arnaut's avatar
      Merge from upstream 5.1-bugteam · 948e64ee
      Davi Arnaut authored
      948e64ee
    • Andrei Elkin's avatar
      Bug #41183 rpl_ndb_circular, rpl_ndb_circular_simplex need maintenance, crash · 4b8ba115
      Andrei Elkin authored
      fixing build issue, caused by the previous push.
      
      sql/log_event.cc:
        moving a new declaration out of mysqlbinlog compilation scope.
      4b8ba115
    • Matthias Leich's avatar
      Merge of latest changesets into GCA tree · 56d86a1a
      Matthias Leich authored
      56d86a1a
    • Andrei Elkin's avatar
      Bug #41183 rpl_ndb_circular, rpl_ndb_circular_simplex need maintenance, crash · 0ed77f3a
      Andrei Elkin authored
                  
      The bug happened because filtering-out a STMT_END_F-flagged event so that
      the transaction COMMIT finds traces of incomplete statement commit.
      Such situation is only possible with ndb circular replication. The filtered-out
      rows event is one that immediately preceeds the COMMIT query event.
            
      Fixed with deploying an the rows-log-event statement commit at executing
      of the transaction COMMIT event. 
      Resources that were allocated by other than STMT_END_F-flagged event of
      the last statement are clean up prior execution of the commit logics.
      
      
      mysql-test/suite/rpl_ndb/t/disabled.def:
        re-enabling two tests.
      sql/log_event.cc:
        Adding the statement cleanup to execute at the transaction commit time.
        The statement might not be ended with execution of STMT_END_F-flagged event because of
        the event was filtered out by SERVER_ID rules.
        Small refactoring for Rows_log_event::do_update_pos() to be split on two parts:
        the statement commit that releases its execution time allocated resources, and
        the relay log update.
      0ed77f3a
    • Magnus Svensson's avatar
      Bug#42588 system_mysql_db_fix30020 fails when run from bin dist with mtr2 · a509cb00
      Magnus Svensson authored
       - Properly set --bindir=$path_client_bindir and --basedir=$basedir by adding %s format specifier
      a509cb00
  4. 03 Feb, 2009 3 commits
    • Alexey Kopytov's avatar
      Fix for bug #41868: crash or memory overrun with concat + upper, date_format · d70c448e
      Alexey Kopytov authored
                          functions
            
      String::realloc() did not check whether the existing string data fits in the newly
      allocated buffer for cases when reallocating a String object with external buffer
      (i.e.alloced == FALSE).  This could lead to memory overruns in some cases.
      
      
      mysql-test/r/func_str.result:
        Added a test case for bug #41868.
      mysql-test/t/func_str.test:
        Added a test case for bug #41868.
      sql/sql_class.cc:
        After each call to Item::send() in select_send::send_data() reset buffer to its
        original state to reduce unnecessary malloc() calls. See comments for bug #41868
        for detailed analysis.
      sql/sql_string.cc:
        Fixed String::realloc() to check whether the existing string data fits in the newly allocated buffer for cases when reallocating a String object with external buffer.
      d70c448e
    • Davi Arnaut's avatar
      Bug#40536: SELECT is blocked by INSERT DELAYED waiting on · e89c9295
      Davi Arnaut authored
                 upgrading lock, even with low_priority_updates
      
      The problem is that there is no mechanism to control whether a
      delayed insert takes a high or low priority lock on a table.
      
      The solution is to modify the delayed insert thread ("handler")
      to take into account the global value of low_priority_updates
      when taking table locks. The value of low_priority_updates is
      retrieved when the insert delayed thread is created and will
      remain the same for the duration of the thread.
      
      
      include/thr_lock.h:
        Update prototype.
      mysql-test/r/delayed.result:
        Add test case result for Bug#40536
      mysql-test/t/delayed.test:
        Add test case for Bug#40536
      mysys/thr_lock.c:
        Add function parameter which specifies the write lock type.
      sql/sql_insert.cc:
        Take a low priority write lock if global value of low_priority_updates
        was ON when the thread was created.
      e89c9295
    • Matthias Leich's avatar
      Merge 5.0 -> 5.1 · 05bac8a2
      Matthias Leich authored
      + fix wrong resultfile have_outfile.require
      05bac8a2