#!/usr/bin/env bash
if [ $# -ne 2 ] ; then
	echo "usage: `basename $0` num-pktables num-fktables" >&2
	exit 2
fi

dropdb test
createdb test || exit 1

date
echo -n "creating tables ..."

time for ((i=1; i <= $1; i++)) ; do
	printf "create table tab_%06d (\n" $i
	printf "    id integer primary key\n"
	printf ");\n"
	for ((j=1; j <= $2; j++)) ; do
		printf "create table tab_%06d_%04d (\n" $i $j
		printf "    fk integer references tab_%06d\n" $i
		printf ");\n"
	done
done | psql -q test
echo ""

date
echo -n "dumping ..."
time pg_dump -s test >test.dump.sql
echo ""

dropdb test
createdb test || exit 1

date
echo -n "restoring ..."
time psql -q test <test.dump.sql
echo ""
