Commit 30bc19c7 authored by unknown's avatar unknown
Browse files

Merge ibabaev@bk-internal.mysql.com:/home/bk/mysql-5.0-opt

into  rurik.mysql.com:/home/igor/mysql-5.0-opt

parents 10961504 84245d4e
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -3398,3 +3398,8 @@ drop table t1,t2;
SELECT 0.9888889889 * 1.011111411911;
0.9888889889 * 1.011111411911
0.9998769417899202067879
select 1 as ' a ';
a 
1
Warnings:
Warning	1466	Leading spaces are removed from name ' a '
+5 −0
Original line number Diff line number Diff line
@@ -2906,3 +2906,8 @@ drop table t1,t2;
# Bug #20569: Garbage in DECIMAL results from some mathematical functions
#
SELECT 0.9888889889 * 1.011111411911;

#
# Bug #10977: No warning issued if a column name is truncated
#
select 1 as ' a ';
+6 −0
Original line number Diff line number Diff line
@@ -573,6 +573,7 @@ void Item::set_name(const char *str, uint length, CHARSET_INFO *cs)
  }
  if (cs->ctype)
  {
    uint orig_len= length;
    /*
      This will probably need a better implementation in the future:
      a function in CHARSET_INFO structure.
@@ -582,6 +583,11 @@ void Item::set_name(const char *str, uint length, CHARSET_INFO *cs)
      length--;
      str++;
    }
    if (orig_len != length && !is_autogenerated_name)
      push_warning_printf(current_thd, MYSQL_ERROR::WARN_LEVEL_WARN,
                          ER_REMOVED_SPACES, ER(ER_REMOVED_SPACES),
                          str + length - orig_len);

  }
  if (!my_charset_same(cs, system_charset_info))
  {
+2 −0
Original line number Diff line number Diff line
@@ -5621,3 +5621,5 @@ ER_TABLE_CANT_HANDLE_SPKEYS
        eng "The used table type doesn't support SPATIAL indexes"
ER_NO_TRIGGERS_ON_SYSTEM_SCHEMA
	eng "Triggers can not be created on system tables"
ER_REMOVED_SPACES
        eng "Leading spaces are removed from name '%s'"
+2 −2
Original line number Diff line number Diff line
@@ -4060,8 +4060,8 @@ select_item:
	      YYABORT;
	    if ($4.str)
            {
	      $2->set_name($4.str, $4.length, system_charset_info);
              $2->is_autogenerated_name= FALSE;
	      $2->set_name($4.str, $4.length, system_charset_info);
            }
	    else if (!$2->name) {
	      char *str = $1;
@@ -4936,8 +4936,8 @@ udf_expr:
	{
	  if ($4.str)
          {
	    $2->set_name($4.str, $4.length, system_charset_info);
            $2->is_autogenerated_name= FALSE;
	    $2->set_name($4.str, $4.length, system_charset_info);
          }
	  else
	    $2->set_name($1, (uint) ($3 - $1), YYTHD->charset());