On Wed, Mar 14, 2018 at 10:58 AM, Claudio Freire <klaussfre...@gmail.com>

> I'm thinking there could be contention on some lock somewhere.
> Can you attach the benchmark script you're using so I can try to reproduce
> it?

I am using a very ad-hoc script.. But here it is.. It assumes a presence of
a branch named "btree_rightmost" with the patched code.

You will need to make necessary adjustments of course.


 Pavan Deolasee                   http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services
start_options="-c shared_buffers=16GB -c max_wal_size=64GB -c min_wal_size=16GB -c checkpoint_timeout=60min -c bgwriter_delay=100 -c bgwriter_lru_maxpages=100 -c bgwriter_lru_multiplier=3 -c bgwriter_flush_after=256 -c checkpoint_completion_target=0.9"

echo "INSERT INTO testtab(b) SELECT generate_series(1,100000);" > s1.sql

for b in master btree_rightmost; do
        git checkout $b > /dev/null 2>&1
        make -s clean > /dev/null 2>&1
        ./configure --prefix=$HOME/pg-install/$b
        make -s -j8 install > /dev/null 2>&1
        export PATH=$HOME/pg-install/$b/bin:$PATH
        for c in 1 2 4 8; do
                pg_ctl -D $PGDATA -w stop
                rm -rf $PGDATA
                initdb -D $PGDATA
                pg_ctl -D $PGDATA -o "$start_options" -w start -l logfile.$b
                psql -c "CREATE TABLE testtab (a bigserial UNIQUE, b bigint);" postgres
                echo "$b $c" >> results.txt
                num_txns_per_client=$((1024 / $c))
                time pgbench -n -l -c $c -j 1 -t $num_txns_per_client -f s1.sql postgres >> results.txt

Reply via email to