psql <<EOF
DROP TABLE test_copy;
DROP TABLE test_copy2;
DROP TABLE test_copy3;
DROP TABLE test_copy4;
COPY (
  SELECT id, id % 100, id % 1000, now() - (id || 's')::INTERVAL
    FROM generate_series(1, 1000000) a(id)
) TO '/tmp/loadtest1.csv';

CREATE TABLE test_copy (
  id            SERIAL PRIMARY KEY,
  location      VARCHAR NOT NULL,
  reading       BIGINT NOT NULL,
  reading_date  TIMESTAMP NOT NULL
);

CREATE INDEX idx_test_copy_location ON test_copy (location);
CREATE INDEX idx_test_copy_date ON test_copy (reading_date);

CREATE TABLE test_copy2 (LIKE test_copy INCLUDING INDEXES);
CREATE TABLE test_copy3 (LIKE test_copy INCLUDING INDEXES);
CREATE TABLE test_copy4 (LIKE test_copy INCLUDING INDEXES);
EOF

psql -c "COPY test_copy FROM '/tmp/loadtest1.csv'" &>/dev/null &
#psql -c "COPY test_copy2 FROM '/tmp/loadtest1.csv'" &>/dev/null &
#psql -c "COPY test_copy3 FROM '/tmp/loadtest1.csv'" &>/dev/null &
#psql -c "COPY test_copy4 FROM '/tmp/loadtest1.csv'" &>/dev/null &
date
wait
date


