mariadb/myisam/ftbench
2003-10-21 23:44:26 +02:00
..
Ecompare.pl ft benchmark suite: initial checkin 2003-03-29 20:40:03 +03:00
Ereport.pl ftbench fixes 2003-10-21 23:44:26 +02:00
ft-test-run.sh ftbench fixes 2003-10-21 23:44:26 +02:00
README ftbench fixes 2003-10-21 23:44:26 +02:00

1. should be run from myisam/ftbench/
2. myisam/ftdefs.h should NOT be locked (bk get, not bk edit!)
3. there should be ./data/ subdir with test collections, files:
     test1.test
     test1.relj
     test2.test
     test2.relj
   where test1, test2, etc - are arbitrary test names
   
   *.test are SQL files of the structure:
=====
DROP TABLE IF EXISTS ft;
CREATE TABLE ft (
  id int(10) unsigned NOT NULL,
  text text NOT NULL,
  FULLTEXT KEY text (text)
);

INSERT INTO ft VALUES (1, 'doc1...'),(2, 'doc2...'),...
...

SELECT COUNT(*) FROM ft;
SELECT 1, id, MATCH text AGAINST ('query1') FROM ft WHERE MATCH text AGAINST ('query1');
SELECT 2, id, MATCH text AGAINST ('query2') FROM ft WHERE MATCH text AGAINST ('query2');
...
=====

   *.relj files have the structure:
   1 16 .....blablabla
   1 09 .....blablabla
   2 116 .....blablabla
   ...

  that is /^\d+\s+\d+/
  and are sorted by the first number (not necessarily by the second)
   
4. there should be ./t/ subdir with test directories

  ./t
  ./t/BEST/
  ./t/testdir1/
  ./t/testdir2/
  ...

  there *must* be ./t/BEST/ subdir or a symlink to one of other dirs in ./t
  all other names (besides BEST) can be arbitrary

  all test results are compared with BEST results.
  
  test directories *must* contain ftdefs.h, and *may* contain my.cnf
  NOTE: all *.out files in test directories will NOT be overwritten!
  delete them to re-test

5. run ./ft-test-run.sh
6. go make some coffee