List:Commits« Previous MessageNext Message »
From:bar Date:September 29 2006 11:40am
Subject:bk commit into 5.0 tree (bar:1.2285)
View as plain text  
Below is the list of changes that have just been committed into a local
5.0 repository of bar. When bar does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html

ChangeSet@stripped, 2006-09-29 16:40:18+05:00, bar@stripped +11 -0
  Merge mysql.com:/usr/home/bar/mysql-5.0.b6147v2
  into  mysql.com:/usr/home/bar/mysql-5.0.b6147rpl
  MERGE: 1.2196.42.3

  mysql-test/r/ps_2myisam.result@stripped, 2006-09-29 16:40:11+05:00, bar@stripped +0 -0
    Auto merged
    MERGE: 1.40.1.1

  mysql-test/r/ps_3innodb.result@stripped, 2006-09-29 16:40:11+05:00, bar@stripped +0 -0
    Auto merged
    MERGE: 1.43.1.1

  mysql-test/r/ps_4heap.result@stripped, 2006-09-29 16:40:11+05:00, bar@stripped +0 -0
    Auto merged
    MERGE: 1.39.1.1

  mysql-test/r/ps_5merge.result@stripped, 2006-09-29 16:40:11+05:00, bar@stripped +0 -0
    Auto merged
    MERGE: 1.40.1.1

  mysql-test/r/ps_6bdb.result@stripped, 2006-09-29 16:40:11+05:00, bar@stripped +0 -0
    Auto merged
    MERGE: 1.42.1.1

  mysql-test/r/select.result@stripped, 2006-09-29 16:40:11+05:00, bar@stripped +0 -0
    Auto merged
    MERGE: 1.130.1.1

  mysql-test/r/strict.result@stripped, 2006-09-29 16:40:12+05:00, bar@stripped +0 -0
    Auto merged
    MERGE: 1.27.1.1

  mysql-test/r/view.result@stripped, 2006-09-29 16:40:12+05:00, bar@stripped +0 -0
    Auto merged
    MERGE: 1.162.1.1

  mysql-test/r/warnings.result@stripped, 2006-09-29 16:40:12+05:00, bar@stripped +0 -0
    Auto merged
    MERGE: 1.35.1.1

  mysql-test/t/strict.test@stripped, 2006-09-29 16:40:12+05:00, bar@stripped +0 -0
    Auto merged
    MERGE: 1.21.1.1

  sql/field.cc@stripped, 2006-09-29 16:40:12+05:00, bar@stripped +0 -0
    Auto merged
    MERGE: 1.314.2.1

# This is a BitKeeper patch.  What follows are the unified diffs for the
# set of deltas contained in the patch.  The rest of the patch, the part
# that BitKeeper cares about, is below these diffs.
# User:	bar
# Host:	bar.intranet.mysql.r18.ru
# Root:	/usr/home/bar/mysql-5.0.b6147rpl/RESYNC

--- 1.324/sql/field.cc	2006-09-29 16:40:27 +05:00
+++ 1.325/sql/field.cc	2006-09-29 16:40:27 +05:00
@@ -2482,30 +2482,27 @@
 
 int Field_tiny::store(const char *from,uint len,CHARSET_INFO *cs)
 {
-  int not_used;				// We can ignore result from str2int
   char *end;
-  long tmp= my_strntol(cs, from, len, 10, &end, &not_used);
-  int error= 0;
+  int error;
 
   if (unsigned_flag)
   {
-    if (tmp < 0)
-    {
-      tmp=0; /* purecov: inspected */
-      set_warning(MYSQL_ERROR::WARN_LEVEL_WARN, ER_WARN_DATA_OUT_OF_RANGE, 1);
-      error= 1;
-    }
-    else if (tmp > 255)
+    ulonglong tmp= cs->cset->strntoull10rnd(cs, from, len, 1, &end, &error);
+    if (error == MY_ERRNO_ERANGE || tmp > 255)
     {
-      tmp= 255;
+      set_if_smaller(tmp, 255);
       set_warning(MYSQL_ERROR::WARN_LEVEL_WARN, ER_WARN_DATA_OUT_OF_RANGE, 1);
       error= 1;
     }
     else if (table->in_use->count_cuted_fields && check_int(from,len,end,cs))
       error= 1;
+    else
+      error= 0;
+    ptr[0]= (char) tmp;
   }
   else
   {
+    longlong tmp= cs->cset->strntoull10rnd(cs, from, len, 0, &end, &error);
     if (tmp < -128)
     {
       tmp= -128;
@@ -2520,8 +2517,10 @@
     }
     else if (table->in_use->count_cuted_fields && check_int(from,len,end,cs))
       error= 1;
+    else
+      error= 0;
+    ptr[0]= (char) tmp;
   }
-  ptr[0]= (char) tmp;
   return error;
 }
 
@@ -2686,30 +2685,34 @@
 
 int Field_short::store(const char *from,uint len,CHARSET_INFO *cs)
 {
-  int not_used;				// We can ignore result from str2int
   char *end;
-  long tmp= my_strntol(cs, from, len, 10, &end, &not_used);
-  int error= 0;
+  int error;
 
   if (unsigned_flag)
   {
-    if (tmp < 0)
+    ulonglong tmp= cs->cset->strntoull10rnd(cs, from, len, 1, &end, &error);
+    if (error == MY_ERRNO_ERANGE || tmp > UINT_MAX16)
     {
-      tmp=0;
-      set_warning(MYSQL_ERROR::WARN_LEVEL_WARN, ER_WARN_DATA_OUT_OF_RANGE, 1);
-      error= 1;
-    }
-    else if (tmp > UINT_MAX16)
-    {
-      tmp=UINT_MAX16;
+      set_if_smaller(tmp, UINT_MAX16);
       set_warning(MYSQL_ERROR::WARN_LEVEL_WARN, ER_WARN_DATA_OUT_OF_RANGE, 1);
       error= 1;
     }
     else if (table->in_use->count_cuted_fields && check_int(from,len,end,cs))
       error= 1;
+    else
+      error= 0;
+#ifdef WORDS_BIGENDIAN
+    if (table->s->db_low_byte_first)
+    {
+      int2store(ptr,tmp);
+    }
+    else
+#endif
+      shortstore(ptr,(short) tmp);
   }
   else
   {
+    longlong tmp= cs->cset->strntoull10rnd(cs, from, len, 0, &end, &error);
     if (tmp < INT_MIN16)
     {
       tmp= INT_MIN16;
@@ -2724,15 +2727,17 @@
     }
     else if (table->in_use->count_cuted_fields && check_int(from,len,end,cs))
       error= 1;
-  }
+    else
+      error= 0;
 #ifdef WORDS_BIGENDIAN
-  if (table->s->db_low_byte_first)
-  {
-    int2store(ptr,tmp);
-  }
-  else
+    if (table->s->db_low_byte_first)
+    {
+      int2store(ptr,tmp);
+    }
+    else
 #endif
-    shortstore(ptr,(short) tmp);
+      shortstore(ptr,(short) tmp);
+  }
   return error;
 }
 
@@ -2960,30 +2965,27 @@
 
 int Field_medium::store(const char *from,uint len,CHARSET_INFO *cs)
 {
-  int not_used;				// We can ignore result from str2int
   char *end;
-  long tmp= my_strntol(cs, from, len, 10, &end, &not_used);
-  int error= 0;
+  int error;
 
   if (unsigned_flag)
   {
-    if (tmp < 0)
+    ulonglong tmp= cs->cset->strntoull10rnd(cs, from, len, 1, &end, &error);
+    if (error == MY_ERRNO_ERANGE || tmp > UINT_MAX24)
     {
-      tmp=0;
-      set_warning(MYSQL_ERROR::WARN_LEVEL_WARN, ER_WARN_DATA_OUT_OF_RANGE, 1);
-      error= 1;
-    }
-    else if (tmp >= (long) (1L << 24))
-    {
-      tmp=(long) (1L << 24)-1L;
+      set_if_smaller(tmp, UINT_MAX24);
       set_warning(MYSQL_ERROR::WARN_LEVEL_WARN, ER_WARN_DATA_OUT_OF_RANGE, 1);
       error= 1;
     }
     else if (table->in_use->count_cuted_fields && check_int(from,len,end,cs))
       error= 1;
+    else
+      error= 0;
+    int3store(ptr,tmp);
   }
   else
   {
+    longlong tmp= cs->cset->strntoull10rnd(cs, from, len, 0, &end, &error);
     if (tmp < INT_MIN24)
     {
       tmp= INT_MIN24;
@@ -2998,9 +3000,10 @@
     }
     else if (table->in_use->count_cuted_fields && check_int(from,len,end,cs))
       error= 1;
+    else
+      error= 0;
+    int3store(ptr,tmp);
   }
-
-  int3store(ptr,tmp);
   return error;
 }
 
@@ -3196,64 +3199,47 @@
 
 int Field_long::store(const char *from,uint len,CHARSET_INFO *cs)
 {
-  ulong tmp_scan;
-  longlong tmp;
   long store_tmp;
   int error;
   char *end;
 
-  tmp_scan= cs->cset->scan(cs, from, from+len, MY_SEQ_SPACES);
-  len-= tmp_scan;
-  from+= tmp_scan;
-
-  end= (char*) from+len;
-  tmp= cs->cset->strtoll10(cs, from, &end, &error);
-
-  if (error != MY_ERRNO_EDOM)
+  if (unsigned_flag)
   {
-    if (unsigned_flag)
+    ulonglong tmp= cs->cset->strntoull10rnd(cs, from, len, 1, &end, &error);
+    if (error == MY_ERRNO_ERANGE || tmp > (ulonglong) UINT_MAX32)
     {
-      if (error < 0)
-      {
-        error= 1;
-        tmp= 0;
-      }
-      else if ((ulonglong) tmp > (ulonglong) UINT_MAX32)
-      {
-        tmp= UINT_MAX32;
-        error= 1;
-      }
-      else
-        error= 0;
+      set_if_smaller(tmp, (ulonglong) UINT_MAX32);
+      set_warning(MYSQL_ERROR::WARN_LEVEL_WARN, ER_WARN_DATA_OUT_OF_RANGE, 1);
+      error= 1;
     }
+    else if (table->in_use->count_cuted_fields && check_int(from,len,end,cs))
+      error= 1;
     else
-    {
-      if (error < 0)
-      {
-        error= 0;
-        if (tmp < INT_MIN32)
-        {
-          tmp= INT_MIN32;
-          error= 1;
-        }
-      }
-      else if (tmp > INT_MAX32)
-      {
-        tmp= INT_MAX32;
-        error= 1;
-      }
-    }
+      error= 0;
+    store_tmp= (long) tmp;
   }
-  if (error)
+  else
   {
-    error= error != MY_ERRNO_EDOM ? 1 : 2;
-    set_warning(MYSQL_ERROR::WARN_LEVEL_WARN, ER_WARN_DATA_OUT_OF_RANGE, 1);
+    longlong tmp= cs->cset->strntoull10rnd(cs, from, len, 0, &end, &error);
+    if (tmp < INT_MIN32)
+    {
+      tmp= INT_MIN32;
+      set_warning(MYSQL_ERROR::WARN_LEVEL_WARN, ER_WARN_DATA_OUT_OF_RANGE, 1);
+      error= 1;
+    }
+    else if (tmp > INT_MAX32)
+    {
+      tmp=INT_MAX32;
+      set_warning(MYSQL_ERROR::WARN_LEVEL_WARN, ER_WARN_DATA_OUT_OF_RANGE, 1);
+      error= 1;
+    }
+    else if (table->in_use->count_cuted_fields && check_int(from,len,end,cs))
+      error= 1;
+    else
+      error= 0;
+    store_tmp= (long) tmp;
   }
-  else if (from+len != end && table->in_use->count_cuted_fields &&
-           check_int(from,len,end,cs))
-    error= 2;
     
-  store_tmp= (long) tmp;
 #ifdef WORDS_BIGENDIAN
   if (table->s->db_low_byte_first)
   {
@@ -3489,33 +3475,20 @@
 
 int Field_longlong::store(const char *from,uint len,CHARSET_INFO *cs)
 {
-  longlong tmp;
-  int error= 0;
+  int error;
   char *end;
+  ulonglong tmp;
 
-  tmp= cs->cset->scan(cs, from, from+len, MY_SEQ_SPACES);
-  len-= (uint)tmp;
-  from+= tmp;
-  if (unsigned_flag)
-  {
-    if (!len || test_if_minus(cs, from, from + len))
-    {
-      tmp=0;					// Set negative to 0
-      error= 1;
-    }
-    else
-      tmp=(longlong) my_strntoull(cs,from,len,10,&end,&error);
-  }
-  else
-    tmp=my_strntoll(cs,from,len,10,&end,&error);
-  if (error)
+  tmp= cs->cset->strntoull10rnd(cs,from,len,unsigned_flag,&end,&error);
+  if (error == MY_ERRNO_ERANGE)
   {
     set_warning(MYSQL_ERROR::WARN_LEVEL_WARN, ER_WARN_DATA_OUT_OF_RANGE, 1);
     error= 1;
   }
-  else if (from+len != end && table->in_use->count_cuted_fields &&
-           check_int(from,len,end,cs))
-    error= 2;
+  else if (table->in_use->count_cuted_fields && check_int(from,len,end,cs))
+    error= 1;
+  else
+    error= 0;
 #ifdef WORDS_BIGENDIAN
   if (table->s->db_low_byte_first)
   {

--- 1.176/mysql-test/r/view.result	2006-09-29 16:40:27 +05:00
+++ 1.177/mysql-test/r/view.result	2006-09-29 16:40:27 +05:00
@@ -1306,9 +1306,9 @@
 delete from t1;
 load data infile '../std_data_ln/loaddata3.dat' ignore into table v1 fields terminated by '' enclosed by '' ignore 1 lines;
 Warnings:
-Warning	1264	Out of range value adjusted for column 'a' at row 3
+Warning	1366	Incorrect integer value: 'error      ' for column 'a' at row 3
 Error	1369	CHECK OPTION failed 'test.v1'
-Warning	1264	Out of range value adjusted for column 'a' at row 4
+Warning	1366	Incorrect integer value: 'wrong end  ' for column 'a' at row 4
 Error	1369	CHECK OPTION failed 'test.v1'
 select * from t1;
 a	b

--- 1.42/mysql-test/r/ps_2myisam.result	2006-09-29 16:40:27 +05:00
+++ 1.43/mysql-test/r/ps_2myisam.result	2006-09-29 16:40:27 +05:00
@@ -2689,21 +2689,21 @@
 execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
 @arg00, @arg00, @arg00, @arg00, @arg00 ;
 Warnings:
-Warning	1265	Data truncated for column 'c1' at row 1
-Warning	1265	Data truncated for column 'c2' at row 1
-Warning	1265	Data truncated for column 'c3' at row 1
-Warning	1265	Data truncated for column 'c4' at row 1
-Warning	1265	Data truncated for column 'c5' at row 1
-Warning	1265	Data truncated for column 'c6' at row 1
+Warning	1264	Out of range value adjusted for column 'c1' at row 1
+Warning	1264	Out of range value adjusted for column 'c2' at row 1
+Warning	1264	Out of range value adjusted for column 'c3' at row 1
+Warning	1264	Out of range value adjusted for column 'c4' at row 1
+Warning	1264	Out of range value adjusted for column 'c5' at row 1
+Warning	1264	Out of range value adjusted for column 'c6' at row 1
 Warning	1264	Out of range value adjusted for column 'c7' at row 1
 Warning	1264	Out of range value adjusted for column 'c12' at row 1
 execute my_select ;
-c1	1
-c2	1
-c3	1
-c4	1
-c5	1
-c6	1
+c1	127
+c2	32767
+c3	8388607
+c4	2147483647
+c5	2147483647
+c6	9223372036854775807
 c7	3.40282e+38
 c8	1.11111111111111e+50
 c9	1.11111111111111e+50
@@ -2739,21 +2739,21 @@
 execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
 @arg00, @arg00, @arg00, @arg00, @arg00 ;
 Warnings:
-Warning	1265	Data truncated for column 'c1' at row 1
-Warning	1265	Data truncated for column 'c2' at row 1
-Warning	1265	Data truncated for column 'c3' at row 1
-Warning	1265	Data truncated for column 'c4' at row 1
-Warning	1265	Data truncated for column 'c5' at row 1
-Warning	1265	Data truncated for column 'c6' at row 1
+Warning	1264	Out of range value adjusted for column 'c1' at row 1
+Warning	1264	Out of range value adjusted for column 'c2' at row 1
+Warning	1264	Out of range value adjusted for column 'c3' at row 1
+Warning	1264	Out of range value adjusted for column 'c4' at row 1
+Warning	1264	Out of range value adjusted for column 'c5' at row 1
+Warning	1264	Out of range value adjusted for column 'c6' at row 1
 Warning	1264	Out of range value adjusted for column 'c7' at row 1
 Warning	1264	Out of range value adjusted for column 'c12' at row 1
 execute my_select ;
-c1	-1
-c2	-1
-c3	-1
-c4	-1
-c5	-1
-c6	-1
+c1	-128
+c2	-32768
+c3	-8388608
+c4	-2147483648
+c5	-2147483648
+c6	-9223372036854775808
 c7	-3.40282e+38
 c8	-1.11111111111111e+50
 c9	-1.11111111111111e+50

--- 1.45/mysql-test/r/ps_3innodb.result	2006-09-29 16:40:27 +05:00
+++ 1.46/mysql-test/r/ps_3innodb.result	2006-09-29 16:40:27 +05:00
@@ -2672,21 +2672,21 @@
 execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
 @arg00, @arg00, @arg00, @arg00, @arg00 ;
 Warnings:
-Warning	1265	Data truncated for column 'c1' at row 1
-Warning	1265	Data truncated for column 'c2' at row 1
-Warning	1265	Data truncated for column 'c3' at row 1
-Warning	1265	Data truncated for column 'c4' at row 1
-Warning	1265	Data truncated for column 'c5' at row 1
-Warning	1265	Data truncated for column 'c6' at row 1
+Warning	1264	Out of range value adjusted for column 'c1' at row 1
+Warning	1264	Out of range value adjusted for column 'c2' at row 1
+Warning	1264	Out of range value adjusted for column 'c3' at row 1
+Warning	1264	Out of range value adjusted for column 'c4' at row 1
+Warning	1264	Out of range value adjusted for column 'c5' at row 1
+Warning	1264	Out of range value adjusted for column 'c6' at row 1
 Warning	1264	Out of range value adjusted for column 'c7' at row 1
 Warning	1264	Out of range value adjusted for column 'c12' at row 1
 execute my_select ;
-c1	1
-c2	1
-c3	1
-c4	1
-c5	1
-c6	1
+c1	127
+c2	32767
+c3	8388607
+c4	2147483647
+c5	2147483647
+c6	9223372036854775807
 c7	3.40282e+38
 c8	1.11111111111111e+50
 c9	1.11111111111111e+50
@@ -2722,21 +2722,21 @@
 execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
 @arg00, @arg00, @arg00, @arg00, @arg00 ;
 Warnings:
-Warning	1265	Data truncated for column 'c1' at row 1
-Warning	1265	Data truncated for column 'c2' at row 1
-Warning	1265	Data truncated for column 'c3' at row 1
-Warning	1265	Data truncated for column 'c4' at row 1
-Warning	1265	Data truncated for column 'c5' at row 1
-Warning	1265	Data truncated for column 'c6' at row 1
+Warning	1264	Out of range value adjusted for column 'c1' at row 1
+Warning	1264	Out of range value adjusted for column 'c2' at row 1
+Warning	1264	Out of range value adjusted for column 'c3' at row 1
+Warning	1264	Out of range value adjusted for column 'c4' at row 1
+Warning	1264	Out of range value adjusted for column 'c5' at row 1
+Warning	1264	Out of range value adjusted for column 'c6' at row 1
 Warning	1264	Out of range value adjusted for column 'c7' at row 1
 Warning	1264	Out of range value adjusted for column 'c12' at row 1
 execute my_select ;
-c1	-1
-c2	-1
-c3	-1
-c4	-1
-c5	-1
-c6	-1
+c1	-128
+c2	-32768
+c3	-8388608
+c4	-2147483648
+c5	-2147483648
+c6	-9223372036854775808
 c7	-3.40282e+38
 c8	-1.11111111111111e+50
 c9	-1.11111111111111e+50

--- 1.41/mysql-test/r/ps_4heap.result	2006-09-29 16:40:27 +05:00
+++ 1.42/mysql-test/r/ps_4heap.result	2006-09-29 16:40:27 +05:00
@@ -2673,21 +2673,21 @@
 execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
 @arg00, @arg00, @arg00, @arg00, @arg00 ;
 Warnings:
-Warning	1265	Data truncated for column 'c1' at row 1
-Warning	1265	Data truncated for column 'c2' at row 1
-Warning	1265	Data truncated for column 'c3' at row 1
-Warning	1265	Data truncated for column 'c4' at row 1
-Warning	1265	Data truncated for column 'c5' at row 1
-Warning	1265	Data truncated for column 'c6' at row 1
+Warning	1264	Out of range value adjusted for column 'c1' at row 1
+Warning	1264	Out of range value adjusted for column 'c2' at row 1
+Warning	1264	Out of range value adjusted for column 'c3' at row 1
+Warning	1264	Out of range value adjusted for column 'c4' at row 1
+Warning	1264	Out of range value adjusted for column 'c5' at row 1
+Warning	1264	Out of range value adjusted for column 'c6' at row 1
 Warning	1264	Out of range value adjusted for column 'c7' at row 1
 Warning	1264	Out of range value adjusted for column 'c12' at row 1
 execute my_select ;
-c1	1
-c2	1
-c3	1
-c4	1
-c5	1
-c6	1
+c1	127
+c2	32767
+c3	8388607
+c4	2147483647
+c5	2147483647
+c6	9223372036854775807
 c7	3.40282e+38
 c8	1.11111111111111e+50
 c9	1.11111111111111e+50
@@ -2723,21 +2723,21 @@
 execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
 @arg00, @arg00, @arg00, @arg00, @arg00 ;
 Warnings:
-Warning	1265	Data truncated for column 'c1' at row 1
-Warning	1265	Data truncated for column 'c2' at row 1
-Warning	1265	Data truncated for column 'c3' at row 1
-Warning	1265	Data truncated for column 'c4' at row 1
-Warning	1265	Data truncated for column 'c5' at row 1
-Warning	1265	Data truncated for column 'c6' at row 1
+Warning	1264	Out of range value adjusted for column 'c1' at row 1
+Warning	1264	Out of range value adjusted for column 'c2' at row 1
+Warning	1264	Out of range value adjusted for column 'c3' at row 1
+Warning	1264	Out of range value adjusted for column 'c4' at row 1
+Warning	1264	Out of range value adjusted for column 'c5' at row 1
+Warning	1264	Out of range value adjusted for column 'c6' at row 1
 Warning	1264	Out of range value adjusted for column 'c7' at row 1
 Warning	1264	Out of range value adjusted for column 'c12' at row 1
 execute my_select ;
-c1	-1
-c2	-1
-c3	-1
-c4	-1
-c5	-1
-c6	-1
+c1	-128
+c2	-32768
+c3	-8388608
+c4	-2147483648
+c5	-2147483648
+c6	-9223372036854775808
 c7	-3.40282e+38
 c8	-1.11111111111111e+50
 c9	-1.11111111111111e+50

--- 1.42/mysql-test/r/ps_5merge.result	2006-09-29 16:40:27 +05:00
+++ 1.43/mysql-test/r/ps_5merge.result	2006-09-29 16:40:27 +05:00
@@ -2609,21 +2609,21 @@
 execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
 @arg00, @arg00, @arg00, @arg00, @arg00 ;
 Warnings:
-Warning	1265	Data truncated for column 'c1' at row 1
-Warning	1265	Data truncated for column 'c2' at row 1
-Warning	1265	Data truncated for column 'c3' at row 1
-Warning	1265	Data truncated for column 'c4' at row 1
-Warning	1265	Data truncated for column 'c5' at row 1
-Warning	1265	Data truncated for column 'c6' at row 1
+Warning	1264	Out of range value adjusted for column 'c1' at row 1
+Warning	1264	Out of range value adjusted for column 'c2' at row 1
+Warning	1264	Out of range value adjusted for column 'c3' at row 1
+Warning	1264	Out of range value adjusted for column 'c4' at row 1
+Warning	1264	Out of range value adjusted for column 'c5' at row 1
+Warning	1264	Out of range value adjusted for column 'c6' at row 1
 Warning	1264	Out of range value adjusted for column 'c7' at row 1
 Warning	1264	Out of range value adjusted for column 'c12' at row 1
 execute my_select ;
-c1	1
-c2	1
-c3	1
-c4	1
-c5	1
-c6	1
+c1	127
+c2	32767
+c3	8388607
+c4	2147483647
+c5	2147483647
+c6	9223372036854775807
 c7	3.40282e+38
 c8	1.11111111111111e+50
 c9	1.11111111111111e+50
@@ -2659,21 +2659,21 @@
 execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
 @arg00, @arg00, @arg00, @arg00, @arg00 ;
 Warnings:
-Warning	1265	Data truncated for column 'c1' at row 1
-Warning	1265	Data truncated for column 'c2' at row 1
-Warning	1265	Data truncated for column 'c3' at row 1
-Warning	1265	Data truncated for column 'c4' at row 1
-Warning	1265	Data truncated for column 'c5' at row 1
-Warning	1265	Data truncated for column 'c6' at row 1
+Warning	1264	Out of range value adjusted for column 'c1' at row 1
+Warning	1264	Out of range value adjusted for column 'c2' at row 1
+Warning	1264	Out of range value adjusted for column 'c3' at row 1
+Warning	1264	Out of range value adjusted for column 'c4' at row 1
+Warning	1264	Out of range value adjusted for column 'c5' at row 1
+Warning	1264	Out of range value adjusted for column 'c6' at row 1
 Warning	1264	Out of range value adjusted for column 'c7' at row 1
 Warning	1264	Out of range value adjusted for column 'c12' at row 1
 execute my_select ;
-c1	-1
-c2	-1
-c3	-1
-c4	-1
-c5	-1
-c6	-1
+c1	-128
+c2	-32768
+c3	-8388608
+c4	-2147483648
+c5	-2147483648
+c6	-9223372036854775808
 c7	-3.40282e+38
 c8	-1.11111111111111e+50
 c9	-1.11111111111111e+50
@@ -5623,21 +5623,21 @@
 execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
 @arg00, @arg00, @arg00, @arg00, @arg00 ;
 Warnings:
-Warning	1265	Data truncated for column 'c1' at row 1
-Warning	1265	Data truncated for column 'c2' at row 1
-Warning	1265	Data truncated for column 'c3' at row 1
-Warning	1265	Data truncated for column 'c4' at row 1
-Warning	1265	Data truncated for column 'c5' at row 1
-Warning	1265	Data truncated for column 'c6' at row 1
+Warning	1264	Out of range value adjusted for column 'c1' at row 1
+Warning	1264	Out of range value adjusted for column 'c2' at row 1
+Warning	1264	Out of range value adjusted for column 'c3' at row 1
+Warning	1264	Out of range value adjusted for column 'c4' at row 1
+Warning	1264	Out of range value adjusted for column 'c5' at row 1
+Warning	1264	Out of range value adjusted for column 'c6' at row 1
 Warning	1264	Out of range value adjusted for column 'c7' at row 1
 Warning	1264	Out of range value adjusted for column 'c12' at row 1
 execute my_select ;
-c1	1
-c2	1
-c3	1
-c4	1
-c5	1
-c6	1
+c1	127
+c2	32767
+c3	8388607
+c4	2147483647
+c5	2147483647
+c6	9223372036854775807
 c7	3.40282e+38
 c8	1.11111111111111e+50
 c9	1.11111111111111e+50
@@ -5673,21 +5673,21 @@
 execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
 @arg00, @arg00, @arg00, @arg00, @arg00 ;
 Warnings:
-Warning	1265	Data truncated for column 'c1' at row 1
-Warning	1265	Data truncated for column 'c2' at row 1
-Warning	1265	Data truncated for column 'c3' at row 1
-Warning	1265	Data truncated for column 'c4' at row 1
-Warning	1265	Data truncated for column 'c5' at row 1
-Warning	1265	Data truncated for column 'c6' at row 1
+Warning	1264	Out of range value adjusted for column 'c1' at row 1
+Warning	1264	Out of range value adjusted for column 'c2' at row 1
+Warning	1264	Out of range value adjusted for column 'c3' at row 1
+Warning	1264	Out of range value adjusted for column 'c4' at row 1
+Warning	1264	Out of range value adjusted for column 'c5' at row 1
+Warning	1264	Out of range value adjusted for column 'c6' at row 1
 Warning	1264	Out of range value adjusted for column 'c7' at row 1
 Warning	1264	Out of range value adjusted for column 'c12' at row 1
 execute my_select ;
-c1	-1
-c2	-1
-c3	-1
-c4	-1
-c5	-1
-c6	-1
+c1	-128
+c2	-32768
+c3	-8388608
+c4	-2147483648
+c5	-2147483648
+c6	-9223372036854775808
 c7	-3.40282e+38
 c8	-1.11111111111111e+50
 c9	-1.11111111111111e+50

--- 1.44/mysql-test/r/ps_6bdb.result	2006-09-29 16:40:27 +05:00
+++ 1.45/mysql-test/r/ps_6bdb.result	2006-09-29 16:40:27 +05:00
@@ -2672,21 +2672,21 @@
 execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
 @arg00, @arg00, @arg00, @arg00, @arg00 ;
 Warnings:
-Warning	1265	Data truncated for column 'c1' at row 1
-Warning	1265	Data truncated for column 'c2' at row 1
-Warning	1265	Data truncated for column 'c3' at row 1
-Warning	1265	Data truncated for column 'c4' at row 1
-Warning	1265	Data truncated for column 'c5' at row 1
-Warning	1265	Data truncated for column 'c6' at row 1
+Warning	1264	Out of range value adjusted for column 'c1' at row 1
+Warning	1264	Out of range value adjusted for column 'c2' at row 1
+Warning	1264	Out of range value adjusted for column 'c3' at row 1
+Warning	1264	Out of range value adjusted for column 'c4' at row 1
+Warning	1264	Out of range value adjusted for column 'c5' at row 1
+Warning	1264	Out of range value adjusted for column 'c6' at row 1
 Warning	1264	Out of range value adjusted for column 'c7' at row 1
 Warning	1264	Out of range value adjusted for column 'c12' at row 1
 execute my_select ;
-c1	1
-c2	1
-c3	1
-c4	1
-c5	1
-c6	1
+c1	127
+c2	32767
+c3	8388607
+c4	2147483647
+c5	2147483647
+c6	9223372036854775807
 c7	3.40282e+38
 c8	1.11111111111111e+50
 c9	1.11111111111111e+50
@@ -2722,21 +2722,21 @@
 execute my_insert using @arg00, @arg00, @arg00, @arg00, @arg00, @arg00,
 @arg00, @arg00, @arg00, @arg00, @arg00 ;
 Warnings:
-Warning	1265	Data truncated for column 'c1' at row 1
-Warning	1265	Data truncated for column 'c2' at row 1
-Warning	1265	Data truncated for column 'c3' at row 1
-Warning	1265	Data truncated for column 'c4' at row 1
-Warning	1265	Data truncated for column 'c5' at row 1
-Warning	1265	Data truncated for column 'c6' at row 1
+Warning	1264	Out of range value adjusted for column 'c1' at row 1
+Warning	1264	Out of range value adjusted for column 'c2' at row 1
+Warning	1264	Out of range value adjusted for column 'c3' at row 1
+Warning	1264	Out of range value adjusted for column 'c4' at row 1
+Warning	1264	Out of range value adjusted for column 'c5' at row 1
+Warning	1264	Out of range value adjusted for column 'c6' at row 1
 Warning	1264	Out of range value adjusted for column 'c7' at row 1
 Warning	1264	Out of range value adjusted for column 'c12' at row 1
 execute my_select ;
-c1	-1
-c2	-1
-c3	-1
-c4	-1
-c5	-1
-c6	-1
+c1	-128
+c2	-32768
+c3	-8388608
+c4	-2147483648
+c5	-2147483648
+c6	-9223372036854775808
 c7	-3.40282e+38
 c8	-1.11111111111111e+50
 c9	-1.11111111111111e+50

--- 1.138/mysql-test/r/select.result	2006-09-29 16:40:27 +05:00
+++ 1.139/mysql-test/r/select.result	2006-09-29 16:40:27 +05:00
@@ -2734,7 +2734,7 @@
 INSERT INTO t1 VALUES (10);
 SELECT i='1e+01',i=1e+01, i in (1e+01,1e+01), i in ('1e+01','1e+01') FROM t1;
 i='1e+01'	i=1e+01	i in (1e+01,1e+01)	i in ('1e+01','1e+01')
-0	1	1	1
+1	1	1	1
 DROP TABLE t1;
 CREATE TABLE t1 (a int, b int);
 INSERT INTO t1 VALUES (1,1), (2,1), (4,10);

--- 1.29/mysql-test/r/strict.result	2006-09-29 16:40:27 +05:00
+++ 1.30/mysql-test/r/strict.result	2006-09-29 16:40:27 +05:00
@@ -619,9 +619,9 @@
 UPDATE t1 SET col1= MOD(col1,0) WHERE col1 > 0;
 ERROR 22012: Division by 0
 INSERT INTO t1 (col1) VALUES ('');
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR HY000: Incorrect integer value: '' for column 'col1' at row 1
 INSERT INTO t1 (col1) VALUES ('a59b');
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR HY000: Incorrect integer value: 'a59b' for column 'col1' at row 1
 INSERT INTO t1 (col1) VALUES ('1a');
 ERROR 01000: Data truncated for column 'col1' at row 1
 INSERT IGNORE INTO t1 (col1) VALUES ('2a');
@@ -701,9 +701,9 @@
 UPDATE t1 SET col1= MOD(col1,0) WHERE col1 > 0;
 ERROR 22012: Division by 0
 INSERT INTO t1 (col1) VALUES ('');
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR HY000: Incorrect integer value: '' for column 'col1' at row 1
 INSERT INTO t1 (col1) VALUES ('a59b');
-ERROR 22003: Out of range value adjusted for column 'col1' at row 1
+ERROR HY000: Incorrect integer value: 'a59b' for column 'col1' at row 1
 INSERT INTO t1 (col1) VALUES ('1a');
 ERROR 01000: Data truncated for column 'col1' at row 1
 INSERT IGNORE INTO t1 (col1) VALUES ('2a');

--- 1.22/mysql-test/t/strict.test	2006-09-29 16:40:27 +05:00
+++ 1.23/mysql-test/t/strict.test	2006-09-29 16:40:27 +05:00
@@ -649,9 +649,9 @@
 UPDATE t1 SET col1 =col1 / 0 WHERE col1 > 0;
 --error 1365
 UPDATE t1 SET col1= MOD(col1,0) WHERE col1 > 0;
---error 1264
+--error 1366
 INSERT INTO t1 (col1) VALUES ('');
---error 1264
+--error 1366
 INSERT INTO t1 (col1) VALUES ('a59b');
 --error 1265
 INSERT INTO t1 (col1) VALUES ('1a');
@@ -710,9 +710,9 @@
 UPDATE t1 SET col1 =col1 / 0 WHERE col1 > 0;
 --error 1365
 UPDATE t1 SET col1= MOD(col1,0) WHERE col1 > 0;
---error 1264
+--error 1366
 INSERT INTO t1 (col1) VALUES ('');
---error 1264
+--error 1366
 INSERT INTO t1 (col1) VALUES ('a59b');
 --error 1265
 INSERT INTO t1 (col1) VALUES ('1a');

--- 1.38/mysql-test/r/warnings.result	2006-09-29 16:40:28 +05:00
+++ 1.39/mysql-test/r/warnings.result	2006-09-29 16:40:28 +05:00
@@ -31,19 +31,19 @@
 insert into t1 values (1);
 insert into t1 values ("hej");
 Warnings:
-Warning	1264	Out of range value adjusted for column 'a' at row 1
+Warning	1366	Incorrect integer value: 'hej' for column 'a' at row 1
 Warnings:
-Warning	1264	Out of range value adjusted for column 'a' at row 1
-Warning	1264	Out of range value adjusted for column 'a' at row 2
+Warning	1366	Incorrect integer value: 'hej' for column 'a' at row 1
+Warning	1366	Incorrect integer value: 'd?' for column 'a' at row 2
 set SQL_WARNINGS=1;
 insert into t1 values ("hej");
 Warnings:
-Warning	1264	Out of range value adjusted for column 'a' at row 1
+Warning	1366	Incorrect integer value: 'hej' for column 'a' at row 1
 Warnings:
-Warning	1264	Out of range value adjusted for column 'a' at row 1
-Warning	1264	Out of range value adjusted for column 'a' at row 2
+Warning	1366	Incorrect integer value: 'hej' for column 'a' at row 1
+Warning	1366	Incorrect integer value: 'd?' for column 'a' at row 2
 drop table t1;
 set SQL_WARNINGS=0;
 drop temporary table if exists not_exists;
@@ -194,44 +194,44 @@
 insert into t1 (a) values (1), (2), (3), (4), (5), (6), (7), (8), (9), (10);
 update t1 set a='abc';
 Warnings:
-Warning	1264	Out of range value adjusted for column 'a' at row 1
-Warning	1264	Out of range value adjusted for column 'a' at row 2
-Warning	1264	Out of range value adjusted for column 'a' at row 3
-Warning	1264	Out of range value adjusted for column 'a' at row 4
-Warning	1264	Out of range value adjusted for column 'a' at row 5
-Warning	1264	Out of range value adjusted for column 'a' at row 6
-Warning	1264	Out of range value adjusted for column 'a' at row 7
-Warning	1264	Out of range value adjusted for column 'a' at row 8
-Warning	1264	Out of range value adjusted for column 'a' at row 9
-Warning	1264	Out of range value adjusted for column 'a' at row 10
+Warning	1366	Incorrect integer value: 'abc' for column 'a' at row 1
+Warning	1366	Incorrect integer value: 'abc' for column 'a' at row 2
+Warning	1366	Incorrect integer value: 'abc' for column 'a' at row 3
+Warning	1366	Incorrect integer value: 'abc' for column 'a' at row 4
+Warning	1366	Incorrect integer value: 'abc' for column 'a' at row 5
+Warning	1366	Incorrect integer value: 'abc' for column 'a' at row 6
+Warning	1366	Incorrect integer value: 'abc' for column 'a' at row 7
+Warning	1366	Incorrect integer value: 'abc' for column 'a' at row 8
+Warning	1366	Incorrect integer value: 'abc' for column 'a' at row 9
+Warning	1366	Incorrect integer value: 'abc' for column 'a' at row 10
 show warnings limit 2, 1;
 Level	Code	Message
-Warning	1264	Out of range value adjusted for column 'a' at row 3
+Warning	1366	Incorrect integer value: 'abc' for column 'a' at row 3
 show warnings limit 0, 10;
 Level	Code	Message
-Warning	1264	Out of range value adjusted for column 'a' at row 1
-Warning	1264	Out of range value adjusted for column 'a' at row 2
-Warning	1264	Out of range value adjusted for column 'a' at row 3
-Warning	1264	Out of range value adjusted for column 'a' at row 4
-Warning	1264	Out of range value adjusted for column 'a' at row 5
-Warning	1264	Out of range value adjusted for column 'a' at row 6
-Warning	1264	Out of range value adjusted for column 'a' at row 7
-Warning	1264	Out of range value adjusted for column 'a' at row 8
-Warning	1264	Out of range value adjusted for column 'a' at row 9
-Warning	1264	Out of range value adjusted for column 'a' at row 10
+Warning	1366	Incorrect integer value: 'abc' for column 'a' at row 1
+Warning	1366	Incorrect integer value: 'abc' for column 'a' at row 2
+Warning	1366	Incorrect integer value: 'abc' for column 'a' at row 3
+Warning	1366	Incorrect integer value: 'abc' for column 'a' at row 4
+Warning	1366	Incorrect integer value: 'abc' for column 'a' at row 5
+Warning	1366	Incorrect integer value: 'abc' for column 'a' at row 6
+Warning	1366	Incorrect integer value: 'abc' for column 'a' at row 7
+Warning	1366	Incorrect integer value: 'abc' for column 'a' at row 8
+Warning	1366	Incorrect integer value: 'abc' for column 'a' at row 9
+Warning	1366	Incorrect integer value: 'abc' for column 'a' at row 10
 show warnings limit 9, 1;
 Level	Code	Message
-Warning	1264	Out of range value adjusted for column 'a' at row 10
+Warning	1366	Incorrect integer value: 'abc' for column 'a' at row 10
 show warnings limit 10, 1;
 Level	Code	Message
 show warnings limit 9, 2;
 Level	Code	Message
-Warning	1264	Out of range value adjusted for column 'a' at row 10
+Warning	1366	Incorrect integer value: 'abc' for column 'a' at row 10
 show warnings limit 0, 0;
 Level	Code	Message
 show warnings limit 1;
 Level	Code	Message
-Warning	1264	Out of range value adjusted for column 'a' at row 1
+Warning	1366	Incorrect integer value: 'abc' for column 'a' at row 1
 show warnings limit 0;
 Level	Code	Message
 show warnings limit 1, 0;
Thread
bk commit into 5.0 tree (bar:1.2285)bar29 Sep