1. 01 Apr, 2009 10 commits
    • Bernt M. Johnsen's avatar
      Bug 43355 merged from 5.1 gca · e40fe386
      Bernt M. Johnsen authored
      e40fe386
    • Gleb Shchepa's avatar
    • Gleb Shchepa's avatar
      Backport bug #37348 fix 5.1 --> 5.0. · 02884a4d
      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.
      02884a4d
    • Georgi Kodinov's avatar
      auto merge · 3bb9a70f
      Georgi Kodinov authored
      3bb9a70f
    • Georgi Kodinov's avatar
      auto merge · 3030d351
      Georgi Kodinov authored
      3030d351
    • Georgi Kodinov's avatar
      merged 5.1-main -> 5.1-bugteam · 3346c5c9
      Georgi Kodinov authored
      3346c5c9
    • Georgi Kodinov's avatar
      merged 5.0-main -> 5.0-bugteam · 01e64735
      Georgi Kodinov authored
      01e64735
    • Bernt M. Johnsen's avatar
      b63460a9
    • Sergey Glukhov's avatar
      Bug#43183 ExctractValue() brings result list in missorder · b46dc9ca
      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.
      b46dc9ca
    • Ramil Kalimullin's avatar
      Fix for bug#42944: partition not pruned correctly · 968069d8
      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.
      968069d8
  2. 31 Mar, 2009 2 commits
  3. 30 Mar, 2009 6 commits
  4. 27 Mar, 2009 22 commits
    • Kristofer Pettersson's avatar
      Bug#40127 Multiple table DELETE IGNORE hangs on foreign key constraint violation · a20bc967
      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
      a20bc967
    • Georgi Kodinov's avatar
      merged tree name change · 7092e7a6
      Georgi Kodinov authored
      7092e7a6
    • Georgi Kodinov's avatar
      tree name changed · f56ad8c8
      Georgi Kodinov authored
      f56ad8c8
    • Georgi Kodinov's avatar
      11679a9c
    • Georgi Kodinov's avatar
      fixed a compilation warning · 5f2bda83
      Georgi Kodinov authored
      5f2bda83
    • Staale Smedseng's avatar
      Merge from 5.0-bugteam · 2c65a31a
      Staale Smedseng authored
      2c65a31a
    • Staale Smedseng's avatar
      Merge from 5.1-bugteam · 98698756
      Staale Smedseng authored
      98698756
    • Alexey Kopytov's avatar
      Automerge. · 3ff57066
      Alexey Kopytov authored
      3ff57066
    • Alexey Kopytov's avatar
      Automerge. · b718d18a
      Alexey Kopytov authored
      b718d18a
    • Alexey Kopytov's avatar
      Automerge. · dcac05be
      Alexey Kopytov authored
      dcac05be
    • Staale Smedseng's avatar
      Merge from 5.0-bugteam · 722fb72a
      Staale Smedseng authored
      722fb72a
    • Georgi Kodinov's avatar
      auto-merge · 2b54a92c
      Georgi Kodinov authored
      2b54a92c
    • Georgi Kodinov's avatar
      2c312d97
    • Tatiana A. Nurnberg's avatar
      auto-merge · 81f4ffc2
      Tatiana A. Nurnberg authored
      81f4ffc2
    • Tatiana A. Nurnberg's avatar
      Bug#43748: crash when non-super user tries to kill the replication threads · ffd9792c
      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
      ffd9792c
    • Staale Smedseng's avatar
      Bug#39953 Triggers are not working properly with multi table · 50ed1ef7
      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.
      50ed1ef7
    • Georgi Kodinov's avatar
      68907b34
    • Alexey Kopytov's avatar
      Manual merge. · 1b938438
      Alexey Kopytov authored
      1b938438
    • Alexey Kopytov's avatar
      Fix for bug #43432: Union on floats does unnecessary rounding · 0b60184b
      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.
      0b60184b
    • Ramil Kalimullin's avatar
      Merge · ad7e825d
      Ramil Kalimullin authored
      ad7e825d
    • Leonard Zhou's avatar
      Merge · 296390a2
      Leonard Zhou authored
      296390a2
    • Ramil Kalimullin's avatar
      Fix for bug #26288: savepoint not deleted, comit on empty transaction · c2c47b67
      Ramil Kalimullin authored
      Problem: commit doesn't delete savepoints if there are no changes 
      in the transaction.
      
      Fix: delete them in such cases.
      
      
      mysql-test/r/innodb_mysql.result:
        Fix for bug #26288: savepoint not deleted, comit on empty transaction
          - test result.
      mysql-test/t/innodb_mysql.test:
        Fix for bug #26288: savepoint not deleted, comit on empty transaction
          - test case.
      sql/handler.cc:
        Fix for bug #26288: savepoint not deleted, comit on empty transaction
          - call transaction.cleanup() even if nht is 0 to delete 
        possible savepoints.
      c2c47b67