List:Internals« Previous MessageNext Message »
From:ingo Date:November 7 2005 6:31pm
Subject:bk commit into 5.0 tree (ingo:1.1973) BUG#13707
View as plain text  
Below is the list of changes that have just been committed into a local
5.0 repository of mydev. When mydev 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
  1.1973 05/11/07 18:31:48 ingo@stripped +1 -0
  Bug#13707 - Server crash with INSERT DELAYED on MyISAM table
  Initialized 'ptr' for a newly instantiated varstring field.
  This is required by INSERT DELAYED.
  
  No test case. This is a migration issue. There are two shell
  scripts attached to the bug report. They can be used for testing.

  sql/field.cc
    1.289 05/11/07 18:31:43 ingo@stripped +10 -3
    Bug#13707 - Server crash with INSERT DELAYED on MyISAM table
    Initialized 'ptr' for a newly instantiated varstring field.
    This is required by INSERT DELAYED.

# 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:	ingo
# Host:	chilla.local
# Root:	/home/mydev/mysql-5.0-bug13707

--- 1.288/sql/field.cc	2005-11-01 02:06:56 +01:00
+++ 1.289/sql/field.cc	2005-11-07 18:31:43 +01:00
@@ -6202,9 +6202,16 @@
     This is done to ensure that ALTER TABLE will convert old VARCHAR fields
     to now VARCHAR fields.
   */
-  return new Field_varstring(field_length, maybe_null(),
-                             field_name, new_table,
-                             charset());
+  Field *new_field= new Field_varstring(field_length, maybe_null(),
+                                        field_name, new_table,
+                                        charset());
+  /*
+    delayed_insert::get_local_table() needs a ptr copied from old table.
+    This is what other new_field() methods do too. The above method of
+    Field_varstring sets ptr to NULL.
+  */
+  new_field->ptr= ptr;
+  return new_field;
 }
 
 /****************************************************************************
Thread
bk commit into 5.0 tree (ingo:1.1973) BUG#13707ingo7 Nov