Full-text search benchmark. Set RDBMS and paths in Makefile before compilation. Initialization example: ./ftsbench -i -n 10000 -f gin -b pgsql -d contrib_regression Benchmark example: ./ftsbench -c 10 -n 300 -f gin -b pgsql -d contrib_regression PostgreSQL prerequisite: version >= 8.2 ./configure --enable-thread-safety contrib/tsearch2 MySQL prerequisite: tested on 5.0.24a ./configure --enable-thread-safe-client --with-pthread SQL mode (output may be redirected to file or database): % ftsbench -S | psql postgres % ftsbench -i -n 10 -f gin -s 17 -d contrib_regression INSERT INTO fb_create (id, rdbms, f_gin, f_gist, f_func, rows, elapsed) VALUES (17, 'pgsql', 't', 'f', 'f', 10, 0.528075); % ftsbench -c 2 -n 2 -f gin -s 17 -d contrib_regression INSERT INTO fb_search (id, f_and, f_or, nclients, nqueries, nres, elapsed) VALUES (17, 't', 'f', 2, 2, 0, 0.063508); % ftsbench -c 2 -n 2 -f gin -s 17 -r -d contrib_regression INSERT INTO fb_row (id, f_and, f_or, nclients, nres, elapsed) VALUES (17, 't', 'f', 2, 0, 0.039024); INSERT INTO fb_row (id, f_and, f_or, nclients, nres, elapsed) VALUES (17, 't', 'f', 2, 1, 0.009069); INSERT INTO fb_row (id, f_and, f_or, nclients, nres, elapsed) VALUES (17, 't', 'f', 2, 0, 0.061368); INSERT INTO fb_row (id, f_and, f_or, nclients, nres, elapsed) VALUES (17, 't', 'f', 2, 3, 0.003654); Notice: Although ftsbench is covered by BSD license redistribution of rand.c and finnegan.c is prohibited without the permission of J. Zobel (jz at cs.rmit.edu.au).