summaryrefslogtreecommitdiff
path: root/src/third_party/wiredtiger/test/format/format.sh
diff options
context:
space:
mode:
Diffstat (limited to 'src/third_party/wiredtiger/test/format/format.sh')
-rwxr-xr-xsrc/third_party/wiredtiger/test/format/format.sh52
1 files changed, 34 insertions, 18 deletions
diff --git a/src/third_party/wiredtiger/test/format/format.sh b/src/third_party/wiredtiger/test/format/format.sh
index 461875e33bb..8a04266ce86 100755
--- a/src/third_party/wiredtiger/test/format/format.sh
+++ b/src/third_party/wiredtiger/test/format/format.sh
@@ -45,17 +45,16 @@ smoke_base_2="$smoke_base_1 leaf_page_max=9 internal_page_max=9"
smoke_list=(
# Three access methods.
"$smoke_base_1 file_type=row"
- # Temporarily disabled
+ # Temporarily disabled: FIXME FLCS
# "$smoke_base_1 file_type=fix"
- # "$smoke_base_1 file_type=var"
+ "$smoke_base_1 file_type=var"
# Huffman value encoding.
"$smoke_base_1 file_type=row huffman_value=1"
- # Temporarily disabled
- # "$smoke_base_1 file_type=var huffman_value=1"
+ "$smoke_base_1 file_type=var huffman_value=1"
# LSM
- # Temporarily disabled
+ # Temporarily disabled: FIXME LSM
# "$smoke_base_1 file_type=row runs.source=lsm"
# Force the statistics server.
@@ -64,8 +63,7 @@ smoke_list=(
# Overflow testing.
"$smoke_base_2 file_type=row key_min=256"
"$smoke_base_2 file_type=row key_min=256 value_min=256"
- # Temporarily disabled
- # "$smoke_base_2 file_type=var value_min=256"
+ "$smoke_base_2 file_type=var value_min=256"
)
smoke_next=0
@@ -392,18 +390,36 @@ resolve()
echo "$name: original directory copied into $dir.RECOVER"
echo) >> $log
- # Everything is a table unless explicitly a file.
- uri="table:wt"
- grep 'runs.source=file' $dir/CONFIG > /dev/null && uri="file:wt"
+ # Verify the objects. In current format, it's a list of files named with a
+ # leading F or tables named with a leading T. Historically, it was a file
+ # or table named "wt".
+ verify_failed=0
+ for i in $(ls $dir | sed -e 's/.*\///'); do
+ case $i in
+ F*) uri="file:$i";;
+ T*) uri="table:${i%.wt}";;
+ wt) uri="file:wt";;
+ wt.wt) uri="table:wt";;
+ *) continue;;
+ esac
+
+ # Use the wt utility to recover & verify the object.
+ echo "verify: $wt_binary -m -R -h $dir verify $uri" >> $log
+ if $($wt_binary -m -R -h $dir verify $uri >> $log 2>&1); then
+ continue
+ fi
+
+ verify_failed=1
+ break
+ done
- # Use the wt utility to recover & verify the object.
- if $($wt_binary -m -R -h $dir verify $uri >> $log 2>&1); then
- rm -rf $dir $dir.RECOVER $log
- success=$(($success + 1))
- verbose "$name: job in $dir successfully completed"
+ if [[ $verify_failed -eq 0 ]]; then
+ rm -rf $dir $dir.RECOVER $log
+ success=$(($success + 1))
+ verbose "$name: job in $dir successfully completed"
else
- echo "$name: job in $dir failed abort/recovery testing"
- report_failure $dir
+ echo "$name: job in $dir failed abort/recovery testing"
+ report_failure $dir
fi
continue
}
@@ -498,7 +514,7 @@ format()
live_record_binary="$live_record_binary --save-on=error"
fi
- cmd="$live_record_binary $format_binary -c "$config" -h "$dir" -1 $args quiet=1"
+ cmd="$live_record_binary $format_binary -c "$config" -h "$dir" $args quiet=1"
echo "$name: $cmd"
# Disassociate the command from the shell script so we can exit and let the command