#!/bin/sh

case $1 in
  "full" | "incremental") echo "Performing $1 recovery"
          
          if [ ! -d $1 ]
          then
             mkdir $1
          fi

          echo "====== Save current logs ======"
          if [ ! -d db/logs/save ] ; then mkdir db/logs/save; fi
          \cp db/logs/log.* db/logs/save

          echo "====== Restore last full backup ======"
          \cp full/data/IntLongMap db/data
          \cp full/data/__catalog db/data
	  \cp full/logs/log.* db/logs
         
          if [ $1 = "incremental" ]
          then
             echo "====== Restore last incremental backup ======" 
              \cp incremental/logs/log.* db/logs
          fi

          echo "====== Restore 'current' logs ======"
          \cp db/logs/save/log.* db/logs
          \rm -r db/logs/save

          echo "====== Please run now ======"
          echo "% db_recover -c -h db"
          echo "or"
          echo "client with Freeze.DbEnv.backup.DbRecoverFatal=1"
          ;;

  *) echo "Usage: $0 [full | incremental]"
     exit 1 ;;
esac
