1. 12 Dec, 2008 8 commits
    • Andrei Elkin's avatar
      ea9248bd
    • Andrei Elkin's avatar
      Bug #41003 log_bin_trust_function_creators_func test explicitly warns on a bug in it · b18d6cd3
      Andrei Elkin authored
      The test 
      1. did not verify that CREATE FUNCTION shall fails in a case of active binlog
         and @@log_bin_trust_function_creators is zero if there is no DETERMINISTIC qualifier
         and super user privilege;
      2. contained an explit warning on that CREATE FUNCTION actually succeeded whereas
         it was supposed to fail;
      3. did not demand the bin-log be set ON even though it has contained the opt file
         explictily setting the name for the binlog file.
            
      Fixed 1-3 with modifying the test accordingly.
      
      
      mysql-test/r/log_bin_trust_function_creators_func.result:
        Bug #41003 changed results.
      mysql-test/t/log_bin_trust_function_creators_func-master.opt:
        removed unnecessary file, the specificly requested binlog file name was not used in
        the test.
      mysql-test/t/log_bin_trust_function_creators_func.test:
        corrected the test that previously: 1.  did not verify that CREATE FUNCTION shall fail
        in some cases; 2. contained an explit warning on that CREATE FUNCTION actually
      b18d6cd3
    • Andrei Elkin's avatar
      merge 5.1-bt repository to my local branch. · 16f0c4ed
      Andrei Elkin authored
      16f0c4ed
    • Gleb Shchepa's avatar
      efeeff39
    • Gleb Shchepa's avatar
      Bug #40761: Assert on sum function on · 423ca289
      Gleb Shchepa authored
                  IF(..., CAST(longtext AS UNSIGNED), signed_val)
                  (was: LEFT JOIN on inline view crashes server)
      
      Select from a LONGTEXT column wrapped with an expression
      like "IF(..., CAST(longtext_column AS UNSIGNED), smth_signed)"
      failed an assertion or crashed the server. IFNULL function was
      affected too.
      
      LONGTEXT column item has a maximum length of 32^2-1 bytes,
      at the same time this is a maximum possible length of any
      MySQL item. CAST(longtext_column AS UNSIGNED) returns some
      unsigned numeric result of length 32^2-1, so the result of
      IF/IFNULL function of this number and some other signed number
      will have text length of (32^2-1)+1=32^2 (one byte for the
      minus sign) - there is integer overflow, and the length is
      equal to zero. That caused assert/crash.
      
      CAST AS UNSIGNED function has been modified to limit maximal
      length of resulting number to 67 (maximal length of DECIMAL
      and two characters for minus sign and dot).
      
      
      mysql-test/r/func_if.result:
        Added test case for bug #40761.
      mysql-test/t/func_if.test:
        Added test case for bug #40761.
      sql/item_func.h:
        Bug #40761: Assert on sum function on
                    IF(..., CAST(longtext AS UNSIGNED), signed_val)
        
        CAST AS UNSIGNED function has been modified to limit maximal
        length of resulting number to 67 (maximal length of DECIMAL
        and two characters for minus sign and dot).
      423ca289
    • Andrei Elkin's avatar
      Bug #41383 Test commit1_innodb fails with binlog-format=row · 88ff00f0
      Andrei Elkin authored
      The test explicitly warned on existence of a bug in its 27th part.
      The expected values of prepare and commit counters changed, corrected, by
      fixes to bug#40221.
      Notice, that binlog does not have to register for a statement with
      the statement binlog-format because the statement rollback does not need
      to do anything in that mode. It's not so with the ROW format which was
      bug#40221 concern.
      
      Fixed with correcting the expected values of the mentioned counters and
      explained that with comments in the test.
      
      mysql-test/include/commit.inc:
        Removing `Sic' that warned on a bug (The one is bug#40221).
        Correcting the expected values of prepare and commit counters due to fixes to bug#40221.
      mysql-test/r/commit_1innodb.result:
        results changed.
      88ff00f0
    • Gleb Shchepa's avatar
      rollback of bug #40761 fix · 7a7c2dd0
      Gleb Shchepa authored
      7a7c2dd0
    • Gleb Shchepa's avatar
      rollback of bug #40761 fix · 646d87da
      Gleb Shchepa authored
      646d87da
  2. 11 Dec, 2008 10 commits
    • Gleb Shchepa's avatar
      310c6415
    • Gleb Shchepa's avatar
      Bug #40761: Assert on sum function on · 3aadda91
      Gleb Shchepa authored
                  IF(..., CAST(longtext AS UNSIGNED), signed_val)
                  (was: LEFT JOIN on inline view crashes server)
      
      Select from a LONGTEXT column wrapped with an expression
      like "IF(..., CAST(longtext_column AS UNSIGNED), smth_signed)"
      failed an assertion or crashed the server. IFNULL function was
      affected too.
      
      LONGTEXT column item has a maximum length of 32^2-1 bytes,
      at the same time this is a maximum possible length of any
      MySQL item. CAST(longtext_column AS UNSIGNED) returns some
      unsigned numeric result of length 32^2-1, so the result of
      IF/IFNULL function of this number and some other signed number
      will have text length of (32^2-1)+1=32^2 (one byte for the
      minus sign) - there is integer overflow, and the length is
      equal to zero. That caused assert/crash.
      
      The bug has been fixed by the same solution as in the CASE
      function implementation.
      
      
      mysql-test/r/func_if.result:
        Added test case for bug #40761.
      mysql-test/t/func_if.test:
        Added test case for bug #40761.
      sql/item_cmpfunc.cc:
        Bug #40761: Assert on sum function on
                    IF(..., CAST(longtext AS UNSIGNED), signed_val)
        
        1. Item_func_case::agg_str_lengths method has been moved
           to the Item_func superclass.
        2. Item_func_ifnull/Item_func_if::fix_length_and_dec methods
           have been updated to calculate max_length, decimals and
           unsigned flag like Item_func_case.
      sql/item_cmpfunc.h:
        Bug #40761: Assert on sum function on
                    IF(..., CAST(longtext AS UNSIGNED), signed_val)
        
        Item_func_case::agg_str_lengths method has been moved to
        the Item_func superclass.
      sql/item_func.cc:
        Bug #40761: Assert on sum function on
                    IF(..., CAST(longtext AS UNSIGNED), signed_val)
        
        Item_func_case::agg_str_lengths method has been moved to
        the Item_func superclass.
      sql/item_func.h:
        Bug #40761: Assert on sum function on
                    IF(..., CAST(longtext AS UNSIGNED), signed_val)
        
        Item_func_case::agg_str_lengths method has been moved to
        the Item_func superclass.
      3aadda91
    • Chad MILLER's avatar
      Merge from bugteam trunk. · 2c646687
      Chad MILLER authored
      2c646687
    • Chad MILLER's avatar
      Merge fix for Bug 33812 from 5.0-bugteam. · 15bc20f1
      Chad MILLER authored
      15bc20f1
    • Chad MILLER's avatar
      Bug#33812: mysql client incorrectly parsing DELIMITER · b109150d
      Chad MILLER authored
      Fix parsing of mysql client commands, especially in relation to
      single-line comments when --comments was specified.
      
      This is a little tricky, because we need to allow single-line
      comments in the middle of statements, but we don't want to allow
      client commands in the middle of statements. So in
      comment-preservation mode, we go ahead and send single-line
      comments to the server immediately when we encounter them on their
      own. 
      
      This is still slightly flawed, in that it does not handle a
      single-line comment with leading spaces, followed by a client-side
      command when --comment has been enabled. But this isn't a new
      problem, and it is quite an edge condition. Fixing it would require
      a more extensive overall of how the mysql client parses commands. 
      b109150d
    • Luis Soares's avatar
      BUG#38826 · 2322b686
      Luis Soares authored
      Merge from 5.0-bugteam. Additional fix for unused ret variable warning.
      
      2322b686
    • Luis Soares's avatar
      Fix PB warnings for parenthesis and valgrind leak report. · c4e3f7f9
      Luis Soares authored
      BUG#38826
      c4e3f7f9
    • Sergey Glukhov's avatar
      5.0-bugteam->5.1-bugteam merge · cc511a50
      Sergey Glukhov authored
      cc511a50
    • Sergey Glukhov's avatar
      fix for pushbuild failure on 64 linux · 3b3594b6
      Sergey Glukhov authored
      3b3594b6
    • Sergey Glukhov's avatar
  3. 10 Dec, 2008 18 commits
  4. 09 Dec, 2008 4 commits