Repository: kudu Updated Branches: refs/heads/master 4aabf46b4 -> 9c763a6a7
benchmarks: work around missing node_density-itest timing measurements This patch works around a long-standing issue that we've never figured out: why are these timing measurements sometimes missing from the node_density-itest log output? I feel bad about the workaround, but I'm really tired of seeing jobs that run this script fail. Change-Id: Iaa4d0b01596fc6f022bad19bcb79afdfbb5dcaef Reviewed-on: http://gerrit.cloudera.org:8080/11710 Reviewed-by: Alexey Serbin <aser...@cloudera.com> Tested-by: Kudu Jenkins Project: http://git-wip-us.apache.org/repos/asf/kudu/repo Commit: http://git-wip-us.apache.org/repos/asf/kudu/commit/9c763a6a Tree: http://git-wip-us.apache.org/repos/asf/kudu/tree/9c763a6a Diff: http://git-wip-us.apache.org/repos/asf/kudu/diff/9c763a6a Branch: refs/heads/master Commit: 9c763a6a7c40b744da65d7355babec231b4809a3 Parents: 4aabf46 Author: Adar Dembo <a...@cloudera.com> Authored: Wed Oct 17 12:24:55 2018 -0700 Committer: Adar Dembo <a...@cloudera.com> Committed: Mon Oct 22 20:18:03 2018 +0000 ---------------------------------------------------------------------- src/kudu/scripts/benchmarks.sh | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/kudu/blob/9c763a6a/src/kudu/scripts/benchmarks.sh ---------------------------------------------------------------------- diff --git a/src/kudu/scripts/benchmarks.sh b/src/kudu/scripts/benchmarks.sh index 346debe..583a838 100755 --- a/src/kudu/scripts/benchmarks.sh +++ b/src/kudu/scripts/benchmarks.sh @@ -429,15 +429,29 @@ parse_and_record_all_results() { num_bytes=`grep log_block_manager_bytes_under_management $log | cut -d ":" -f 5 | tr -d ' '` num_containers=`grep log_block_manager_containers $log | cut -d ":" -f 5 | tr -d ' '` num_full_containers=`grep log_block_manager_full_containers $log | cut -d ":" -f 5 | tr -d ' '` + + # For some inexplicable reason, these timing measurements are sometimes + # not emitted to the log file. Having spent a great deal of time trying to + # figure out why, let's just skip missing measurements. + # + # This may cause resulting graphs to look a little sharp, but that's better + # than failing the entire script. + set +e time_restarting_tserver=`grep "Time spent restarting tserver" $log | ./parse_real_out.sh` time_bootstrapping_tablets=`grep "Time spent bootstrapping tablets" $log | ./parse_real_out.sh` + set -e record_result $BUILD_IDENTIFIER ${DENSE_NODE_ITEST}_num_threads $i $num_threads record_result $BUILD_IDENTIFIER ${DENSE_NODE_ITEST}_num_blocks $i $num_blocks record_result $BUILD_IDENTIFIER ${DENSE_NODE_ITEST}_num_bytes $i $num_bytes record_result $BUILD_IDENTIFIER ${DENSE_NODE_ITEST}_num_containers $i $num_containers record_result $BUILD_IDENTIFIER ${DENSE_NODE_ITEST}_num_full_containers $i $num_full_containers - record_result $BUILD_IDENTIFIER ${DENSE_NODE_ITEST}_time_restarting_tserver $i $time_restarting_tserver - record_result $BUILD_IDENTIFIER ${DENSE_NODE_ITEST}_time_bootstrapping_tablets $i $time_bootstrapping_tablets + if [ -n "$time_restarting_tserver" ]; then + record_result $BUILD_IDENTIFIER ${DENSE_NODE_ITEST}_time_restarting_tserver $i $time_restarting_tserver + fi + if [ -n "$time_bootstrapping_tablets" ]; then + record_result $BUILD_IDENTIFIER ${DENSE_NODE_ITEST}_time_bootstrapping_tablets $i $time_bootstrapping_tablets + fi + done popd