List:Commits« Previous MessageNext Message »
From:igor Date:May 28 2007 12:05am
Subject:bk commit into 5.0 tree (ibabaev:1.2502)
View as plain text  
Below is the list of changes that have just been committed into a local
5.0 repository of ibabaev. When ibabaev 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, 2007-05-28 00:05:38+02:00, ibabaev@stripped +12 -0
  Merge bk-internal.mysql.com:/data0/bk/mysql-5.0
  into  bk-internal.mysql.com:/data0/bk/mysql-5.0-opt
  MERGE: 1.2469.20.23

  client/mysqldump.c@stripped, 2007-05-28 00:05:32+02:00, ibabaev@stripped +0 -0
    Auto merged
    MERGE: 1.262.1.1

  mysql-test/r/mysqldump.result@stripped, 2007-05-28 00:05:32+02:00,
ibabaev@stripped +0 -0
    Auto merged
    MERGE: 1.123.1.1

  mysql-test/r/ps_2myisam.result@stripped, 2007-05-28 00:05:32+02:00,
ibabaev@stripped +0 -0
    Auto merged
    MERGE: 1.46.1.1

  mysql-test/r/ps_3innodb.result@stripped, 2007-05-28 00:05:33+02:00,
ibabaev@stripped +0 -0
    Auto merged
    MERGE: 1.49.1.1

  mysql-test/r/ps_4heap.result@stripped, 2007-05-28 00:05:33+02:00,
ibabaev@stripped +0 -0
    Auto merged
    MERGE: 1.45.1.1

  mysql-test/r/ps_5merge.result@stripped, 2007-05-28 00:05:33+02:00,
ibabaev@stripped +0 -0
    Auto merged
    MERGE: 1.46.1.1

  mysql-test/r/ps_6bdb.result@stripped, 2007-05-28 00:05:33+02:00,
ibabaev@stripped +0 -0
    Auto merged
    MERGE: 1.48.1.1

  mysql-test/r/ps_7ndb.result@stripped, 2007-05-28 00:05:33+02:00,
ibabaev@stripped +0 -0
    Auto merged
    MERGE: 1.49.1.1

  sql/field.h@stripped, 2007-05-28 00:05:33+02:00, ibabaev@stripped +0 -0
    Auto merged
    MERGE: 1.201.1.2

  sql/item_func.cc@stripped, 2007-05-28 00:05:33+02:00, ibabaev@stripped +0 -0
    Auto merged
    MERGE: 1.338.2.1

  sql/my_decimal.h@stripped, 2007-05-28 00:05:33+02:00, ibabaev@stripped +0 -0
    Auto merged
    MERGE: 1.16.1.1

  sql/sql_base.cc@stripped, 2007-05-28 00:05:33+02:00, ibabaev@stripped +0 -0
    Auto merged
    MERGE: 1.379.1.2

# 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:	ibabaev
# Host:	bk-internal.mysql.com
# Root:	/data0/bk/mysql-5.0-opt/RESYNC

--- 1.263/client/mysqldump.c	2007-05-16 10:14:28 +02:00
+++ 1.264/client/mysqldump.c	2007-05-28 00:05:32 +02:00
@@ -2535,15 +2535,18 @@
                   plus 2 bytes for '0x' prefix.
                   - In non-HEX mode we need up to 2 bytes per character,
                   plus 2 bytes for leading and trailing '\'' characters.
+                  Also we need to reserve 1 byte for terminating '\0'.
                 */
-                dynstr_realloc_checked(&extended_row,length * 2+2);
+                dynstr_realloc_checked(&extended_row,length * 2 + 2 + 1);
                 if (opt_hex_blob && is_blob)
                 {
                   dynstr_append_checked(&extended_row, "0x");
                   extended_row.length+= mysql_hex_string(extended_row.str +
                                                          extended_row.length,
                                                          row[i], length);
-                  extended_row.str[extended_row.length]= '\0';
+                  DBUG_ASSERT(extended_row.length+1 <= extended_row.max_length);
+                  /* mysql_hex_string() already terminated string by '\0' */
+                  DBUG_ASSERT(extended_row.str[extended_row.length] == '\0');
                 }
                 else
                 {

--- 1.202/sql/field.h	2007-05-16 10:44:38 +02:00
+++ 1.203/sql/field.h	2007-05-28 00:05:33 +02:00
@@ -1108,6 +1108,11 @@
 
 class Field_varstring :public Field_longstr {
 public:
+  /*
+    The maximum space available in a Field_varstring, in bytes. See
+    length_bytes.
+  */
+  static const uint MAX_SIZE= UINT_MAX16;
   /* Store number of bytes used to store length (1 or 2) */
   uint32 length_bytes;
   Field_varstring(char *ptr_arg,

--- 1.340/sql/item_func.cc	2007-05-24 09:21:57 +02:00
+++ 1.341/sql/item_func.cc	2007-05-28 00:05:33 +02:00
@@ -5347,6 +5347,8 @@
   {
     null_value= 1;
     context->process_error(thd);
+    if (thd->killed)
+      thd->send_kill_message();
     return TRUE;
   }
 

--- 1.380/sql/sql_base.cc	2007-05-17 22:17:45 +02:00
+++ 1.381/sql/sql_base.cc	2007-05-28 00:05:33 +02:00
@@ -5167,7 +5167,12 @@
       get_key_map_from_key_list(&map, table, table_list->use_index);
       if (map.is_set_all())
 	DBUG_RETURN(1);
-      table->keys_in_use_for_query=map;
+      /* 
+	 Don't introduce keys in keys_in_use_for_query that weren't there 
+	 before. FORCE/USE INDEX should not add keys, it should only remove
+	 all keys except the key(s) specified in the hint.
+      */
+      table->keys_in_use_for_query.intersect(map);
     }
     if (table_list->ignore_index)
     {
@@ -5800,7 +5805,7 @@
     table= (*ptr)->table;
     table->auto_increment_field_not_null= FALSE;
   }
-  while ((field = *ptr++))
+  while ((field = *ptr++) && !thd->net.report_error)
   {
     value=v++;
     table= field->table;

--- 1.47/mysql-test/r/ps_2myisam.result	2007-05-16 10:44:34 +02:00
+++ 1.48/mysql-test/r/ps_2myisam.result	2007-05-28 00:05:32 +02:00
@@ -1927,8 +1927,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -1974,8 +1974,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2024,8 +2024,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2064,8 +2064,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2112,8 +2112,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2156,8 +2156,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2202,8 +2202,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2240,8 +2240,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63

--- 1.50/mysql-test/r/ps_3innodb.result	2007-05-16 10:44:34 +02:00
+++ 1.51/mysql-test/r/ps_3innodb.result	2007-05-28 00:05:33 +02:00
@@ -1910,8 +1910,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -1957,8 +1957,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2007,8 +2007,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2047,8 +2047,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2095,8 +2095,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2139,8 +2139,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2185,8 +2185,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2223,8 +2223,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63

--- 1.46/mysql-test/r/ps_4heap.result	2007-05-16 10:44:35 +02:00
+++ 1.47/mysql-test/r/ps_4heap.result	2007-05-28 00:05:33 +02:00
@@ -1911,8 +1911,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -1958,8 +1958,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2008,8 +2008,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2048,8 +2048,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2096,8 +2096,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2140,8 +2140,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2186,8 +2186,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2224,8 +2224,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63

--- 1.47/mysql-test/r/ps_5merge.result	2007-05-16 10:44:35 +02:00
+++ 1.48/mysql-test/r/ps_5merge.result	2007-05-28 00:05:33 +02:00
@@ -1847,8 +1847,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -1894,8 +1894,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -1944,8 +1944,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -1984,8 +1984,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2032,8 +2032,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2076,8 +2076,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2122,8 +2122,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2160,8 +2160,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -4868,8 +4868,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -4915,8 +4915,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -4965,8 +4965,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -5005,8 +5005,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -5053,8 +5053,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -5097,8 +5097,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -5143,8 +5143,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -5181,8 +5181,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63

--- 1.50/mysql-test/r/ps_6bdb.result	2007-05-17 20:55:52 +02:00
+++ 1.51/mysql-test/r/ps_6bdb.result	2007-05-28 00:05:33 +02:00
@@ -1910,8 +1910,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -1957,8 +1957,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2007,8 +2007,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2047,8 +2047,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2095,8 +2095,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2139,8 +2139,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2185,8 +2185,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2223,8 +2223,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63

--- 1.17/sql/my_decimal.h	2007-05-17 22:17:45 +02:00
+++ 1.18/sql/my_decimal.h	2007-05-28 00:05:33 +02:00
@@ -36,13 +36,17 @@
 
 /* maximum length of buffer in our big digits (uint32) */
 #define DECIMAL_BUFF_LENGTH 9
+
+/* the number of digits that my_decimal can possibly contain */
+#define DECIMAL_MAX_POSSIBLE_PRECISION (DECIMAL_BUFF_LENGTH * 9)
+
 /*
   maximum guaranteed precision of number in decimal digits (number of our
   digits * number of decimal digits in one our big digit - number of decimal
-  digits in one our big digit decreased on 1 (because we always put decimal
+  digits in one our big digit decreased by 1 (because we always put decimal
   point on the border of our big digits))
 */
-#define DECIMAL_MAX_PRECISION ((DECIMAL_BUFF_LENGTH * 9) - 8*2)
+#define DECIMAL_MAX_PRECISION (DECIMAL_MAX_POSSIBLE_PRECISION - 8*2)
 #define DECIMAL_MAX_SCALE 30
 #define DECIMAL_NOT_SPECIFIED 31
 
@@ -50,7 +54,7 @@
   maximum length of string representation (number of maximum decimal
   digits + 1 position for sign + 1 position for decimal point)
 */
-#define DECIMAL_MAX_STR_LENGTH (DECIMAL_MAX_PRECISION + 2)
+#define DECIMAL_MAX_STR_LENGTH (DECIMAL_MAX_POSSIBLE_PRECISION + 2)
 /*
   maximum size of packet length
 */

--- 1.50/mysql-test/r/ps_7ndb.result	2007-05-16 10:44:36 +02:00
+++ 1.51/mysql-test/r/ps_7ndb.result	2007-05-28 00:05:33 +02:00
@@ -1910,8 +1910,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -1957,8 +1957,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2007,8 +2007,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2047,8 +2047,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2095,8 +2095,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2139,8 +2139,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2185,8 +2185,8 @@
 def					@arg08	253	23	1	Y	128	31	63
 def					@arg09	253	23	1	Y	128	31	63
 def					@arg10	253	23	1	Y	128	31	63
-def					@arg11	253	67	6	Y	128	30	63
-def					@arg12	253	67	6	Y	128	30	63
+def					@arg11	253	83	6	Y	128	30	63
+def					@arg12	253	83	6	Y	128	30	63
 def					@arg13	253	8192	10	Y	128	31	63
 def					@arg14	253	8192	19	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63
@@ -2223,8 +2223,8 @@
 def					@arg08	253	23	0	Y	128	31	63
 def					@arg09	253	23	0	Y	128	31	63
 def					@arg10	253	23	0	Y	128	31	63
-def					@arg11	253	67	0	Y	128	30	63
-def					@arg12	253	67	0	Y	128	30	63
+def					@arg11	253	83	0	Y	128	30	63
+def					@arg12	253	83	0	Y	128	30	63
 def					@arg13	253	8192	0	Y	128	31	63
 def					@arg14	253	8192	0	Y	128	31	63
 def					@arg15	253	8192	19	Y	128	31	63

--- 1.124/mysql-test/r/mysqldump.result	2007-05-16 10:14:28 +02:00
+++ 1.125/mysql-test/r/mysqldump.result	2007-05-28 00:05:32 +02:00
@@ -3310,5 +3310,16 @@
 drop user user2;
 drop database mysqldump_test_db;
 #
+# Bug #28522: buffer overrun by '\0' byte using --hex-blob.
+#
+CREATE TABLE t1 (c1 INT, c2 LONGBLOB);
+INSERT INTO t1 SET c1=11, c2=REPEAT('q',509);
+CREATE TABLE `t1` (
+  `c1` int(11) default NULL,
+  `c2` longblob
+);
+INSERT INTO `t1` VALUES
(11,0x7171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171!
 717171717171717171717171717171717171717171717171717171717171);
+DROP TABLE t1;
+#
 # End of 5.0 tests
 #
Thread
bk commit into 5.0 tree (ibabaev:1.2502)igor27 May