Bug #2490 Database corrupt after 29 inserts to empty MyISAM table
Submitted: 23 Jan 2004 5:11 Modified: 19 Feb 2004 5:13
Reporter: Mirza Hadzic Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: MyISAM storage engine Severity:S1 (Critical)
Version:4.1.1 OS:Windows (Windows 2000 / Mandrake 9.2)
Assigned to: Alexey Botchkov CPU Architecture:Any
Tags: corruption, myisam, spatial

[23 Jan 2004 5:11] Mirza Hadzic
Description:
When I create table STREETS, and insert 29 records, Checking table shows that table is corrupted. I tested this bug on two different machines and operating systems and it works same. 
Note: On Windows 4.1.1. binary download is Max edition, in linux I tested it with "normal" edition, so I had to remove ENGINE=MyISAM from CREATE TABLE command on linux, otherwise it was syntax error.

How to repeat:
CREATE TABLE `STREETS` (
  `ID` int(4) NOT NULL default '0',
  `PERMANENT_ID` bigint(8) default NULL,
  `LEVEL` tinyint(1) default NULL,
  `STREET_NAME` varchar(32) default NULL,
  `ROAD_NAME` varchar(10) default NULL,
  `CROSSING_FROM` int(4) default NULL,
  `CROSSING_TO` int(4) default NULL,
  `START_Z` tinyint(1) default NULL,
  `END_Z` tinyint(1) default NULL,
  `LENGTH` int(4) default NULL,
  `DURATION` int(4) default NULL,
  `HOUSE_NUMBER_FROM_L` smallint(2) default NULL,
  `HOUSE_NUMBER_TO_L` smallint(2) default NULL,
  `HOUSE_NUMBER_FROM_R` smallint(2) default NULL,
  `HOUSE_NUMBER_TO_R` smallint(2) default NULL,
  `POSTCODE1` varchar(10) default NULL,
  `POSTCODE2` varchar(10) default NULL,
  `SETTLEMENT1` varchar(32) default NULL,
  `SETTLEMENT2` varchar(32) default NULL,
  `ADDR_TXT` varchar(128) default NULL,
  `COUNTRY` int(2) default NULL,
  `DIRECTION` tinyint(1) default NULL,
  `TOLL_ROAD` tinyint(1) default NULL,
  `SPEED_FACTOR` smallint(2) default NULL,
  `ACTIVE` tinyint(1) default NULL,
  `PEDESTRIAN` tinyint(1) default NULL,
  `IN_SETTLEMENT` tinyint(1) default NULL,
  `GEOM` geometry NOT NULL default '',
  PRIMARY KEY  (`ID`),
  KEY `I_PERMANENT_ID` (`PERMANENT_ID`),
  KEY `I_STREET_NAME` (`STREET_NAME`),
  KEY `I_POSTCODE1` (`POSTCODE1`),
  KEY `I_POSTCODE2` (`POSTCODE2`),
  KEY `I_SETTLEMENT1` (`SETTLEMENT1`),
  KEY `I_SETTLEMENT2` (`SETTLEMENT2`),
  SPATIAL KEY `I_GEOM` (`GEOM`(32)),
  FULLTEXT KEY `I_ADDRESS` (`ADDR_TXT`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='This table contains all roads and streets.'; 
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (0,14421000139008,3,"","N8",0,1,0,0,55,26,-1,-1,-1,-1,"","","","",CONVERT(_latin1"  " USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (1,14421000139009,3,"","N8",1,2,0,0,91,44,-1,-1,-1,-1,"","","","",CONVERT(_latin1"  " USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (2,14421000139016,7,CONVERT(_latin1"Chemin de la Platinerie" USING utf8),"",3,4,0,0,29,30,-1,-1,-1,-1,"8552","8552",CONVERT(_latin1"Beckerich" USING utf8),CONVERT(_latin1"Oberpallen" USING utf8),CONVERT(_latin1"8552 Beckerich Oberpallen Chemin de la Platinerie" USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (3,14421000139017,4,"","CR110",5,6,0,0,26,14,-1,-1,-1,-1,"","","","",CONVERT(_latin1"  " USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (4,14421000139018,4,"","CR110",7,5,1,0,44,24,-1,-1,-1,-1,"","","","",CONVERT(_latin1"  " USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (5,14421000139019,4,"","CR110",8,7,1,1,29,16,-1,-1,-1,-1,"","","","",CONVERT(_latin1"  " USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (6,14421000139020,4,"","CR110",9,8,0,1,405,224,-1,-1,-1,-1,"","","","",CONVERT(_latin1"  " USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (7,14421000139021,4,"","CR110",10,9,0,0,257,142,-1,-1,-1,-1,"","","","",CONVERT(_latin1"  " USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (8,14421000139022,4,"","CR110",11,10,0,0,33,18,-1,-1,-1,-1,"","","","",CONVERT(_latin1"  " USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (9,14421000169237,7,"","",12,13,0,0,368,378,-1,-1,-1,-1,"","","","",CONVERT(_latin1"  " USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (10,14421000169238,7,"","",13,14,0,0,287,295,-1,-1,-1,-1,"","","","",CONVERT(_latin1"  " USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (11,14421000139031,4,"","CR303",15,16,0,0,422,234,-1,-1,-1,-1,"","","","",CONVERT(_latin1"  " USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (12,14421000169178,7,CONVERT(_latin1"Wathermal" USING utf8),"",17,18,0,0,510,525,-1,-1,-1,-1,"","",CONVERT(_latin1"Troisvierges" USING utf8),CONVERT(_latin1"Hautbellain" USING utf8),CONVERT(_latin1" Troisvierges Hautbellain Wathermal" USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (13,14421000140449,7,CONVERT(_latin1"Chemin de la Platinerie" USING utf8),"",4,19,0,0,23,23,-1,-1,-1,-1,"8552","8552",CONVERT(_latin1"Beckerich" USING utf8),CONVERT(_latin1"Oberpallen" USING utf8),CONVERT(_latin1"8552 Beckerich Oberpallen Chemin de la Platinerie" USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (14,14421000169259,4,"","",20,21,0,0,9,5,-1,-1,-1,-1,"","","","",CONVERT(_latin1"  " USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (15,14421000169260,4,"","",21,22,0,0,30,16,-1,-1,-1,-1,"","","","",CONVERT(_latin1"  " USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (16,14421000171054,4,CONVERT(_latin1"Rue de Rodange" USING utf8),"N872",23,24,0,0,63,35,-1,-1,-1,-1,"","",CONVERT(_latin1"PÚtange" USING utf8),CONVERT(_latin1"Rodange" USING utf8),CONVERT(_latin1" PÚtange Rodange Rue de Rodange" USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (17,14421000171055,4,CONVERT(_latin1"Rue des Martyrs" USING utf8),"",25,26,0,0,167,92,-1,-1,-1,-1,"","",CONVERT(_latin1"Rumelange" USING utf8),CONVERT(_latin1"Rumelange" USING utf8),CONVERT(_latin1" Rumelange Rue des Martyrs" USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (18,14421000171056,4,CONVERT(_latin1"Rue des Martyrs" USING utf8),"",27,25,0,0,31,17,-1,-1,-1,-1,"","",CONVERT(_latin1"Rumelange" USING utf8),CONVERT(_latin1"Rumelange" USING utf8),CONVERT(_latin1" Rumelange Rue des Martyrs" USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (19,14421000171057,4,CONVERT(_latin1"Rue des Martyrs" USING utf8),"",28,27,0,0,236,131,-1,-1,-1,-1,"","",CONVERT(_latin1"Rumelange" USING utf8),CONVERT(_latin1"Rumelange" USING utf8),CONVERT(_latin1" Rumelange Rue des Martyrs" USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (20,14421000171058,4,CONVERT(_latin1"Rue des Martyrs" USING utf8),"",26,29,0,0,126,70,-1,-1,-1,-1,"","",CONVERT(_latin1"Rumelange" USING utf8),CONVERT(_latin1"Rumelange" USING utf8),CONVERT(_latin1" Rumelange Rue des Martyrs" USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (21,14421000139060,7,"","",30,31,0,0,34,35,-1,-1,-1,-1,"","","","",CONVERT(_latin1"  " USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (22,14421000156895,7,"","",32,33,0,0,345,355,-1,-1,-1,-1,"","","","",CONVERT(_latin1"  " USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (23,14421000156896,7,"","",34,32,0,0,29,30,-1,-1,-1,-1,"","","","",CONVERT(_latin1"  " USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (24,14421000170891,7,"","",35,36,0,0,393,405,-1,-1,-1,-1,"","","","",CONVERT(_latin1"  " USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (25,14421000169302,6,"","",37,38,0,0,19,13,-1,-1,-1,-1,"","","","",CONVERT(_latin1"  " USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (26,14421000169303,6,"","",38,39,0,0,607,437,-1,-1,-1,-1,"","","","",CONVERT(_latin1"  " USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (27,14421000169304,7,"","",40,41,0,0,12,13,-1,-1,-1,-1,"","","","",CONVERT(_latin1"  " USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO STREETS (ID,PERMANENT_ID,LEVEL,STREET_NAME,ROAD_NAME,CROSSING_FROM,CROSSING_TO,START_Z,END_Z,LENGTH,DURATION,HOUSE_NUMBER_FROM_L,HOUSE_NUMBER_TO_L,HOUSE_NUMBER_FROM_R,HOUSE_NUMBER_TO_R,POSTCODE1,POSTCODE2,SETTLEMENT1,SETTLEMENT2,ADDR_TXT,COUNTRY,DIRECTION,TOLL_ROAD,SPEED_FACTOR,ACTIVE,PEDESTRIAN,IN_SETTLEMENT,GEOM) VALUES (28,14421000169305,7,"","",42,40,0,0,9,9,-1,-1,-1,-1,"","","","",CONVERT(_latin1"  " USING utf8),450,0,FALSE,100,TRUE,FALSE,FALSE,GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
[23 Jan 2004 6:03] Mirza Hadzic
Script for reproducing bug in 4.1.1.

Attachment: myerr.txt (text/plain), 17.63 KiB.

[23 Jan 2004 6:05] Mirza Hadzic
HTML makes this script look weird so I added it also to "files" section.
[23 Jan 2004 6:25] MySQL Verification Team
Thank you for the bug report:

mysql> check table streets;
+--------------+-------+----------+-------------------------------------+
| Table        | Op    | Msg_type | Msg_text                            |
+--------------+-------+----------+-------------------------------------+
| test.streets | check | error    | Key in wrong position at page 12288 |
| test.streets | check | error    | Corrupt                             |
+--------------+-------+----------+-------------------------------------+
2 rows in set (0.01 sec)
[23 Jan 2004 17:50] MySQL Verification Team
Sergei tested against latest 4.1 bk tree:

C:\mysql\bin>mysql -uroot test
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2 to server version: 4.1.2-alpha-max-debug

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> check table streets;
+--------------+-------+----------+-------------------------------------+
| Table        | Op    | Msg_type | Msg_text                            |
+--------------+-------+----------+-------------------------------------+
| test.streets | check | error    | Key in wrong position at page 12288 |
| test.streets | check | error    | Corrupt                             |
+--------------+-------+----------+-------------------------------------+
2 rows in set (0.03 sec)

mysql> select version();
+-----------------------+
| version()             |
+-----------------------+
| 4.1.2-alpha-max-debug |
+-----------------------+
1 row in set (0.00 sec)
[16 Feb 2004 15:37] Sergei Golubchik
It's a GIS//rtree bug. Smaller test case:

drop table if exists t1;
CREATE TABLE t1 (a geometry NOT NULL, SPATIAL (a));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)"));
check table t1;
[19 Feb 2004 5:13] Alexey Botchkov
Thank you for your bug report. This issue has been committed to our
source repository of that product and will be incorporated into the
next release.

If necessary, you can access the source repository and build the latest
available version, including the bugfix, yourself. More information 
about accessing the source trees is available at
    http://www.mysql.com/doc/en/Installing_source_tree.html

Additional info:

bk commit - 4.1 tree (hf:1.1723) (19 Feb)