summaryrefslogtreecommitdiffstats
path: root/src/bmclient/main.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/bmclient/main.cpp')
-rw-r--r--src/bmclient/main.cpp45
1 files changed, 43 insertions, 2 deletions
diff --git a/src/bmclient/main.cpp b/src/bmclient/main.cpp
index 738e734..da99f3c 100644
--- a/src/bmclient/main.cpp
+++ b/src/bmclient/main.cpp
@@ -1036,9 +1036,49 @@ BMRequest * Executor::createIndexGetValuesRequest(
if (!BMMisc::getMultiOption(args, "-branch", &branchFilter, error))
return 0;
+ // Get data quality stats params ...
+ bool dataQualityStats = false;
+ qreal dqStatsDiffTol = -1;
+ int dqStatsStabTol = -1;
+ if (BMMisc::hasOption(args, "-dataqualitystats")) {
+ dataQualityStats = true;
+
+ // Difference tolerance ...
+ if (BMMisc::getOption(args, "-dqstatsdifftol", &values, 1, 0, error)) {
+ bool ok;
+ dqStatsDiffTol = values.at(0).toDouble(&ok);
+ if (!ok) {
+ *error =
+ "failed to extract difference tolerance for data quality stats as a double";
+ return 0;
+ }
+ dqStatsDiffTol = qMax(dqStatsDiffTol, 0.0);
+ } else {
+ if (error->isEmpty())
+ *error = QString("-dqstatsdifftol option not found");
+ return 0;
+ }
+
+ // Stability tolerance ...
+ if (BMMisc::getOption(args, "-dqstatsstabtol", &values, 1, 0, error)) {
+ bool ok;
+ dqStatsStabTol = values.at(0).toInt(&ok);
+ if ((!ok) || (dqStatsStabTol < 2)) {
+ *error =
+ "failed to extract stabiliity tolerance for data quality stats as an "
+ "integer >= 2";
+ return 0;
+ }
+ } else {
+ if (error->isEmpty())
+ *error = QString("-dqstatsstabtol option not found");
+ return 0;
+ }
+ }
+
return new BMRequest_IndexGetValues(
baseTimestamp, medianWinSize, cacheKey, testCaseFilter, metricFilter, platformFilter,
- hostFilter, branchFilter);
+ hostFilter, branchFilter, dataQualityStats, dqStatsDiffTol, dqStatsStabTol);
}
BMRequest * Executor::createIndexPutConfigRequest(const QStringList &args, QString *error) const
@@ -1582,7 +1622,8 @@ class DirectExecutor : public Executor
" -basetimestamp <...> [-medianwinsize <...> (default = 8)] \\\n"
" [-testcase <...> -testcase <...> ...] [-metric <...> -metric <...> ...] \\\n"
" [-platform <...> -platform <...> ...] [-host <...> -host <...> ...] \\\n"
- " [-branch <...> -branch <...> ...]\n"
+ " [-branch <...> -branch <...> ...] \\\n"
+ " [-dataqualitystats -dqstatsdifftol <...>] \n"
<<
"index get plot <SAME AS 'index get values' except that the optional \\\n"