Scripts for testing GiST concurrency. Statements generator: http://www.sigaev.ru/gist/concur.pl Usage: ./concur.pl -d DATABASE [-n N] [-c N] [-l] -d DATABASE - DATABASE name -n N - number of rows -c N - number of flow -l - linear mode Script guarantees the same result (ie the same data in table) with the same -n and -c options, result doesn't depend on -l option. Also script guarantees absence of dead locks. % perl concur.pl -d qq -n 100000 -c 4 Start: parallel mode with 4 flows 3 flow finish. Stats: ni:25000 nu:555 nd:81 nv:4(nf:1) nt:232 0 flow finish. Stats: ni:25000 nu:554 nd:77 nv:2(nf:0) nt:247 1 flow finish. Stats: ni:25000 nu:548 nd:65 nv:4(nf:1) nt:249 2 flow finish. Stats: ni:25000 nu:552 nd:79 nv:7(nf:2) nt:263 All flow finish; status: 0; elapsed time: 159.25 sec Script prints some statistics per flow: ni - number of insert's statements (sum of this should be equal to -n N) nu - -/- update's statements nd - -/- delete's statements nv - -/- vacuum (including full vacuum) nf - number of full vacuum nt - number of transactions Simple wrapper for loop testing (you should edit it to right paths): http://www.sigaev.ru/gist/concur.sh