1#!/usr/bin/env bash
2# Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved.
3#
4# A shell script to verify DB generated by generate_random_db.sh cannot opened and read correct data.
5# ./ldb needs to be avaible to be executed.
6#
7# Usage: <SCRIPT> <DB Path>
8
9scriptpath=`dirname $BASH_SOURCE`
10if [ "$#" -lt 2 ]; then
11  echo "usage: $BASH_SOURCE <db_directory> <compare_base_db_directory> [dump_file_name] [if_try_load_options] [if_ignore_unknown_options]"
12  exit 1
13fi
14
15db_dir=$1
16base_db_dir=$2
17dump_file_name=${3:-"dump_file.txt"}
18try_load_options=${4:-"1"}
19ignore_unknown_options=${5:-"0"}
20db_dump=$db_dir"/"$dump_file_name
21base_db_dump=$base_db_dir"/"$dump_file_name
22extra_param=
23
24if [ "$try_load_options" = "1" ]; then
25 extra_param=" --try_load_options "
26fi
27
28if [ "$ignore_unknown_options" = "1" ]; then
29 extra_param=" --ignore_unknown_options "
30fi
31
32set -e
33echo == Dumping data from $db_dir to $db_dump
34./ldb dump --db=$db_dir $extra_param > $db_dump
35
36echo == Dumping data from $base_db_dir to $base_db_dump
37./ldb dump --db=$base_db_dir $extra_param > $base_db_dump
38
39diff $db_dump $base_db_dir
40