#!/bin/sh

PGDATA_WAL_FILE=$1
ARCHIVE_FILE=$2

archive_copy ()
{
  cp $PGDATA_WAL_FILE $ARCHIVE_FILE
}

case $PGDATA_WAL_FILE in
  *.backup )
    if [ ! -f $ARCHIVE_FILE ]; then
      archive_copy
    fi
    ;;
  *.history )
    if [ ! -f $ARCHIVE_FILE ]; then
      archive_copy
    fi
    ;;
  * )
    if [ ! -f $ARCHIVE_FILE ]; then
      archive_copy
    else
      FSIZE=`wc -c $ARCHIVE_FILE | awk '{print $1}'`
      if [ $FSIZE -lt 16777216 ]; then
        archive_copy
      fi
    fi
    ;;
esac
exit 0
