• unknown's avatar
    Bug#15757: Wrong SUBSTRING() result when a tmp table was employed. · 816ea8a3
    unknown authored
    When the SUBSTRING() function was used over a LONGTEXT field the max_length of
    the SUBSTRING() result was wrongly calculated and set to 0. As the max_length
    parameter is used while tmp field creation it limits the length of the result
    field and leads to printing an empty string instead of the correct result.
    
    Now the Item_func_substr::fix_length_and_dec() function correctly calculates
    the max_length parameter.
    
    
    mysql-test/t/func_str.test:
      Added a test case for the bug#15757: Wrong SUBSTRING() result when a tmp table was employed.
    mysql-test/r/func_str.result:
      Added a test case for the bug#15757: Wrong SUBSTRING() result when a tmp table was employed.
    sql/item_strfunc.cc:
      Bug#15757: Wrong SUBSTRING() result when a tmp table was employed.
      Now the Item_func_substr::fix_length_and_dec() function correctly calculates
      the max_length parameter.
    816ea8a3
item_strfunc.cc 84 KB