Test af mulig bug i MySQL
Jeg er ved at undersøge muligheden for en bug i MySQL\'s FULLTEXT indeks. Derfor søger jeg testere, der kan afprøve følgende sql-script på deres systemer.Der er 30 point til alle, der gør sig den ulejlighed at teste (jeg tilføjer senere det ekstra antal point som skulle være nødvendigt). Det jeg ønsker at få som svar er:
Hvilken platform kører du på (Linux (+ distributionsnavn + versionsnr + kerne-version)/Windows (Win95/98/Me/NT/2000 Server/professional + Service Pack nr)
Hvilken version af MySQL kører du? (Hvis Linux, er det en RPM eller har du selv kompileret - og med hvilken version af GCC, hvis Windows, er det den normale binary eller -MAX)
Får du nogen fejlmeddelelser eller kører det glat igennem?
Jeg har selv testet på 2 Win2k server platforme med Henholdsvis 3.23.39-nt og 3.23.39-MAX-debug, og begge gange giver sidste SQL-sætning mig følgende fejl:
ERROR 1034 at line 31: Incorrect key file for table: \'visitkort\'. Try to repair
it
Hvis jeg fjerner FULLTEXT indekset, kører det uden problemer. Hvis jeg beholder FULLTEXT idx, men istedet lader navn,beskrivelse, tekst1, tekst2, tekst3 og tekst4 acceptere NULL værdier, kører det også uden problemer.
Til dem der skulle være i tvivl, testes scriptet på følgende måde:
1) Lav en tom database, kald den f.eks. \"testft\"
2) Gem nedenstående kommandoer i en fil \"ft.sql\"
3) Kør filen således:
c:\\mysql testft <ft.sql
hvis du har brugernavn og adgangskode på:
c:\\mysql -ubrugernavn -padgangskode testft <ft.sql
På forhånd tak!
##################################################
CREATE TABLE `visitkort` (
`id` int(10) unsigned NOT NULL auto_increment,
`kategori_id` int(10) unsigned NOT NULL default \'0\',
`aktiv` tinyint(3) unsigned NOT NULL default \'0\',
`navn` varchar(60) NOT NULL default \'\',
`adresse` varchar(150) NOT NULL default \'\',
`postnr` varchar(5) NOT NULL default \'\',
`tlf` varchar(20) NOT NULL default \'\',
`fax` varchar(20) NOT NULL default \'\',
`email` varchar(60) NOT NULL default \'\',
`password` varchar(20) NOT NULL default \'\',
`url` varchar(150) NOT NULL default \'\',
`beskrivelse` varchar(200) NOT NULL default \'\',
`visitkort` tinyint(3) unsigned NOT NULL default \'0\',
`skabelon` tinyint(3) unsigned NOT NULL default \'0\',
`logo` tinyint(3) unsigned NOT NULL default \'0\',
`billede` tinyint(3) unsigned NOT NULL default \'0\',
`tekst1` text NOT NULL,
`tekst2` text NOT NULL,
`tekst3` text NOT NULL,
`tekst4` text NOT NULL,
PRIMARY KEY (`id`),
FULLTEXT KEY `ft` (`navn`,`beskrivelse`,`tekst1`,`tekst2`,`tekst3`,`tekst4`)
) TYPE=MyISAM;
insert into visitkort (kategori_id) values (108);
update visitkort set navn = \'test5\' where id = last_insert_id();
update visitkort set tekst1 = \'bla bla\' where id = last_insert_id();
##################################################
