#!/bin/bash

FROM=$(date +%Y-%m-%d --date='-1 month')
echo "remove data before $FROM"

export CONTAINER=rtls-postgres-1

CMD="docker exec -t $CONTAINER psql -U postgres -c \"delete from rtls_pu.rtls_tag_blink where time < '$FROM';\""
echo "$CMD"
eval $CMD

CMD="docker exec -t $CONTAINER psql -U postgres -c \"delete from rtls_pu.rtls_mileage where time < '$FROM';\""
echo "$CMD"
eval $CMD

CMD="docker exec -t $CONTAINER psql -U postgres -c \"delete from rtls_pu.rtls_tag_sensor where time < '$FROM';\""
echo "$CMD"
eval $CMD

CMD="docker exec -t $CONTAINER psql -U postgres -c \"alter table rtls_pu.rtls_event drop constraint rtls_event_open_event_fk;\""
echo "$CMD"
eval $CMD

CMD="docker exec -t $CONTAINER psql -U postgres -c \"update rtls_pu.rtls_event set open_event_fk = null where (time < '$FROM' and open_event_fk is not null or open_event_fk not in (select id from rtls_pu.rtls_event));\""
echo "$CMD"
eval $CMD

CMD="docker exec -t $CONTAINER psql -U postgres -c \"delete from rtls_pu.rtls_event where time < '$FROM';\""
echo "$CMD"
eval $CMD

CMD="docker exec -t $CONTAINER psql -U postgres -c \"alter table rtls_pu.rtls_event ADD CONSTRAINT rtls_event_open_event_fk FOREIGN KEY (open_event_fk) REFERENCES rtls_pu.rtls_event(id);\""
echo "$CMD"
eval $CMD

echo "vacuum..."
docker exec -t rtls_postgres_1 psql -U postgres -c "vacuum full;"

