1. 01 Apr, 2009 12 commits
    • Bernt M. Johnsen's avatar
      bookkeeping · c21873fa
      Bernt M. Johnsen authored
      c21873fa
    • Bernt M. Johnsen's avatar
      bookkeeping · 97eebadd
      Bernt M. Johnsen authored
      97eebadd
    • Bernt M. Johnsen's avatar
      Bug 43355 merged from 5.1 gca · a87dc1ae
      Bernt M. Johnsen authored
      a87dc1ae
    • Gleb Shchepa's avatar
    • Gleb Shchepa's avatar
      Backport bug #37348 fix 5.1 --> 5.0. · 4a71e3ee
      Gleb Shchepa authored
      Original commentary:
      
      Bug #37348: Crash in or immediately after JOIN::make_sum_func_list
                  
      The optimizer pulls up aggregate functions which should be aggregated in
      an outer select. At some point it may substitute such a function for a field
      in the temporary table. The setup_copy_fields function doesn't take this
      into account and may overrun the copy_field buffer.
                  
      Fixed by filtering out the fields referenced through the specialized
      reference for aggregates (Item_aggregate_ref).
      Added an assertion to make sure bugs that cause similar discrepancy 
      don't go undetected.
      
      
      mysql-test/r/func_group.result:
        Backport bug #37348 fix 5.1 --> 5.0.
      mysql-test/t/func_group.test:
        Backport bug #37348 fix 5.1 --> 5.0.
      sql/item.cc:
        Backport bug #37348 fix 5.1 --> 5.0.
      sql/item.h:
        Backport bug #37348 fix 5.1 --> 5.0.
      sql/sql_select.cc:
        Backport bug #37348 fix 5.1 --> 5.0.
      4a71e3ee
    • Georgi Kodinov's avatar
      auto merge · 0585f18f
      Georgi Kodinov authored
      0585f18f
    • Georgi Kodinov's avatar
      auto merge · 4549f0a1
      Georgi Kodinov authored
      4549f0a1
    • Georgi Kodinov's avatar
      merged 5.1-main -> 5.1-bugteam · c14865f9
      Georgi Kodinov authored
      c14865f9
    • Georgi Kodinov's avatar
      merged 5.0-main -> 5.0-bugteam · a0d768f4
      Georgi Kodinov authored
      a0d768f4
    • Bernt M. Johnsen's avatar
      58121475
    • Sergey Glukhov's avatar
      Bug#43183 ExctractValue() brings result list in missorder · f0a5638f
      Sergey Glukhov authored
      The problem is that XML functions(items) do not reset null_value
      before their execution and further item excution may use
      null_value value of the previous result.
      The fix is to reset null_value.
      
      
      mysql-test/r/xml.result:
        test result
      mysql-test/t/xml.test:
        test case
      sql/item_xmlfunc.cc:
        The problem is that XML functions(items) do not reset null_value
        before their execution and further item excution may use
        null_value value of the previous result.
        The fix is to reset null_value.
      f0a5638f
    • Ramil Kalimullin's avatar
      Fix for bug#42944: partition not pruned correctly · 9384b951
      Ramil Kalimullin authored
      Problem: we don't prune a LESS THAN partition if MAXVALUE is given and
      given value is equal to a LESS THAN value.
      
      Fix: prune partitions in such cases.
      
      
      mysql-test/r/partition.result:
        Fix for bug#42944: partition not pruned correctly
          - test result.
      mysql-test/t/partition.test:
        Fix for bug#42944: partition not pruned correctly
          - test case.
      sql/sql_partition.cc:
        Fix for bug#42944: partition not pruned correctly
          - prune partition if given value is equal to a LESS THAN value
            and it's not a "PARTITION ... LESS THAN MAXVALUE" one.
      9384b951
  2. 31 Mar, 2009 2 commits
  3. 30 Mar, 2009 6 commits
  4. 27 Mar, 2009 20 commits
    • Kristofer Pettersson's avatar
      Bug#40127 Multiple table DELETE IGNORE hangs on foreign key constraint violation · 5d4c84b7
      Kristofer Pettersson authored
                on 5.0            
      The server crashes on an assert in net_end_statement indicating that the
      Diagnostics area wasn't set properly during execution.
      This happened on a multi table DELETE operation using the IGNORE keyword.
      The keyword is suppose to allow for execution to continue on a best effort
      despite some non-fatal errors. Instead execution stopped and no client
      response was sent which would have led to a protocol error if it hadn't been
      for the assert.
      This patch corrects this issue by checking for the existence of an IGNORE
      option before setting an error state during row-by-row delete iteration.
      
      
      mysql-test/r/innodb_mysql.result:
        * Added test case for bug40127
      mysql-test/t/innodb_mysql.test:
        * Added test case for bug40127
      sql/sql_delete.cc:
        * IGNORE option wasn't implemented in multi_delete::send_data
          and multi_delete::do_deletes
      5d4c84b7
    • Georgi Kodinov's avatar
      merged tree name change · 480f00a1
      Georgi Kodinov authored
      480f00a1
    • Georgi Kodinov's avatar
      tree name changed · bd06869b
      Georgi Kodinov authored
      bd06869b
    • Georgi Kodinov's avatar
      1428f3f7
    • Georgi Kodinov's avatar
      fixed a compilation warning · a295ceaf
      Georgi Kodinov authored
      a295ceaf
    • Staale Smedseng's avatar
      Merge from 5.0-bugteam · 8c036ca3
      Staale Smedseng authored
      8c036ca3
    • Staale Smedseng's avatar
      Merge from 5.1-bugteam · 5772fa73
      Staale Smedseng authored
      5772fa73
    • Alexey Kopytov's avatar
      Automerge. · f531afab
      Alexey Kopytov authored
      f531afab
    • Alexey Kopytov's avatar
      Automerge. · 1496d75b
      Alexey Kopytov authored
      1496d75b
    • Alexey Kopytov's avatar
      Automerge. · 54ddd2ac
      Alexey Kopytov authored
      54ddd2ac
    • Staale Smedseng's avatar
      Merge from 5.0-bugteam · b221ef31
      Staale Smedseng authored
      b221ef31
    • Georgi Kodinov's avatar
      auto-merge · bfec91ab
      Georgi Kodinov authored
      bfec91ab
    • Georgi Kodinov's avatar
      ea9b7da1
    • Tatiana A. Nurnberg's avatar
      auto-merge · 62e0f61e
      Tatiana A. Nurnberg authored
      62e0f61e
    • Tatiana A. Nurnberg's avatar
      Bug#43748: crash when non-super user tries to kill the replication threads · 643138f2
      Tatiana A. Nurnberg authored
      Test was flakey on some machines and showed spurious
      reds for races.
      
      New-and-improved test makes do with fewer statements,
      no mysqltest-variables, and no backticks. Should hope-
      fully be more robust. Heck, it's debatable whether we
      should have a test for this, anyway.
      
      mysql-test/suite/rpl/r/rpl_temporary.result:
        streamlined
      mysql-test/suite/rpl/t/rpl_temporary.test:
        streamlined
      643138f2
    • Staale Smedseng's avatar
      Bug#39953 Triggers are not working properly with multi table · e5a656af
      Staale Smedseng authored
      updates
      
      Attempt to execute trigger or stored function with multi-UPDATE
      which used - but didn't update - a table that was also used by
      the calling statement led to an error. Read-only reference to
      tables used in the calling statement should be allowed.
       
      This problem was caused by the fact that check for conflicting
      use of tables in SP/triggers was performed in open_tables(),
      and in case of multi-UPDATE we didn't know exact lock type at
      this stage.
      
      We solve the problem by moving this check to lock_tables(), so
      it can be performed after exact lock types for tables used by
      multi-UPDATE are determined.
      
      
      mysql-test/r/trigger.result:
        Results for the added test case is added.
      mysql-test/t/trigger.test:
        A new test case is added, verifying correct table multi-update
        conflict resolution, both read-only and write.
      sql/sql_base.cc:
        The check for conflicting use of tables in SP/triggers is moved
        to lock_tables(), to be performed after the exact lock types
        have been determined. Also, an assert is added to open_ltable()
        to ensure this func is not used in a prelocked context.
      e5a656af
    • Georgi Kodinov's avatar
      93569301
    • Alexey Kopytov's avatar
      Manual merge. · 0ca874fb
      Alexey Kopytov authored
      0ca874fb
    • Alexey Kopytov's avatar
      Fix for bug #43432: Union on floats does unnecessary rounding · c952123d
      Alexey Kopytov authored
        
      UNION could convert fixed-point FLOAT(M,D)/DOUBLE(M,D) columns  
      to FLOAT/DOUBLE when aggregating data types from the SELECT  
      substatements. While there is nothing particularly wrong with  
      this behavior, especially when M is greater than the hardware  
      precision limits, it could be confusing in cases when all  
      SELECT statements in a union have the same  
      FLOAT(M,D)/DOUBLE(M,D) columns with equal precision  
      specifications listed in the same position.  
        
      Since the manual is quite vague on what data type should be  
      returned in such cases, the bug was fixed by implementing the  
      most 'expected' behavior: do not convert FLOAT(M,D)/DOUBLE(M,D)  
      to anything else if all SELECT statements in a UNION have the  
      same precision for that column.  
      
      mysql-test/r/union.result:
        Added a test case for bug #43432.
      mysql-test/t/union.test:
        Added a test case for bug #43432.
      sql/field.cc:
        Replaced FLT_DIG+6 and DBL_DIG+7 with a symbolic constant.
      sql/item.cc:
        Do not convert FLOAT(M,D)/DOUBLE(M,D) 
        to anything else if all SELECT statements in a UNION have the 
        same precision for that column.
      sql/mysql_priv.h:
        Added a symbolic constant for FLT_DIG+6 and DBL_DIG+7.
      c952123d
    • Ramil Kalimullin's avatar
      Merge · e5185d45
      Ramil Kalimullin authored
      e5185d45