#!/usr/bin/bash

for num_levels in 1 2 3; do

	for keys_per_level in 1 8 64; do

		for unique_paths in $keys_per_level 1000; do

			path_length=6

			echo "===== $num_levels,$keys_per_level,$path_length ====="

			psql json_test -c "truncate test_table"

			echo '  generating'
			python json-generate.py 30000 $num_levels $unique_paths $keys_per_level $path_length 1000

			echo '  analyzing'
			psql json_test > timing.log 2>&1 <<EOF
\timing on
ANALYZE test_table
EOF

			s=`psql -t -A json_test -c "select pg_total_relation_size('test_table'::regclass)"`
			t=`cat timing.log | grep Time | awk '{print $2}'`
			p=`cat timing.log | grep collected | awk '{print $3}'`

			psql json_test -c "copy test_table to stdout" > data.dump 2>&1
			psql json_test -c "select * from pg_statistic where starelid = 'test_table'::regclass and staattnum = 1" > stats.dump 2>&1

			s1=`ls -l data.dump | awk '{print $5}'`
			s2=`ls -l stats.dump | awk '{print $5}'`

			echo $num_levels,$keys_per_level,$unique_paths,$path_length,$p,$t,$s,$s1,$s2 >> analyze.csv

			mkdir "$num_levels-$keys_per_level-$unique_paths"
			gzip *.dump
			mv *.gz "$num_levels-$keys_per_level-$unique_paths"

		done

	done

done

