diff options
author | sindre <sindre.grostad@icloud.com> | 2017-08-08 08:46:15 +0200 |
---|---|---|
committer | Ola Aunrønning <olaa@yahoo-inc.com> | 2017-08-15 12:29:29 +0200 |
commit | b091b896f5cfa44c49999316f32f1b36dc164e04 (patch) | |
tree | 320fcd33edb239cf3c320b1a2dd9ef8696b2be57 /node-maintainer | |
parent | 4adfe43b94fed4eca7834f0e92928cc0f112fd5a (diff) |
Added system exit in benchmarks to allow testing
Diffstat (limited to 'node-maintainer')
4 files changed, 19 insertions, 13 deletions
diff --git a/node-maintainer/src/main/java/com/yahoo/vespa/hosted/node/verification/hardware/BenchmarkResultInspector.java b/node-maintainer/src/main/java/com/yahoo/vespa/hosted/node/verification/hardware/BenchmarkResultInspector.java index 1431b233d8f..fbb52dd7e37 100644 --- a/node-maintainer/src/main/java/com/yahoo/vespa/hosted/node/verification/hardware/BenchmarkResultInspector.java +++ b/node-maintainer/src/main/java/com/yahoo/vespa/hosted/node/verification/hardware/BenchmarkResultInspector.java @@ -13,7 +13,7 @@ public class BenchmarkResultInspector { private static final double MEMORY_READ_SPEED_LOWER_LIMIT = 1D; private static final double DISK_SPEED_LOWER_LIMIT = 50D; - public static BenchmarkReport isBenchmarkResultsValid(BenchmarkResults benchmarkResults) { + public static BenchmarkReport makeBenchmarkReport(BenchmarkResults benchmarkResults) { BenchmarkReport benchmarkReport = new BenchmarkReport(); double cpuCyclesPerSec = benchmarkResults.getCpuCyclesPerSec(); if ( cpuCyclesPerSec < CPU_FREQUENCY_LOWER_LIMIT) { diff --git a/node-maintainer/src/main/java/com/yahoo/vespa/hosted/node/verification/hardware/HardwareBenchmarker.java b/node-maintainer/src/main/java/com/yahoo/vespa/hosted/node/verification/hardware/HardwareBenchmarker.java index 7798892f97f..53567fc231a 100644 --- a/node-maintainer/src/main/java/com/yahoo/vespa/hosted/node/verification/hardware/HardwareBenchmarker.java +++ b/node-maintainer/src/main/java/com/yahoo/vespa/hosted/node/verification/hardware/HardwareBenchmarker.java @@ -9,6 +9,7 @@ import com.yahoo.vespa.hosted.node.verification.hardware.benchmarks.CPUBenchmark import com.yahoo.vespa.hosted.node.verification.hardware.benchmarks.DiskBenchmark; import com.yahoo.vespa.hosted.node.verification.hardware.benchmarks.MemoryBenchmark; import com.yahoo.vespa.hosted.node.verification.hardware.report.BenchmarkReport; +import com.yahoo.vespa.hosted.node.verification.spec.report.VerificationReport; import java.util.ArrayList; import java.util.Arrays; @@ -27,15 +28,20 @@ public class HardwareBenchmarker { for (Benchmark benchmark : benchmarks) { benchmark.doBenchmark(); } - BenchmarkReport benchmarkReport = makeBenchmarkReport(benchmarkResults); + BenchmarkReport benchmarkReport = BenchmarkResultInspector.makeBenchmarkReport(benchmarkResults); printBenchmarkResults(benchmarkReport); - - return true; + return isAllBenchmarksOK(benchmarkReport); } - protected static BenchmarkReport makeBenchmarkReport(BenchmarkResults benchmarkResults) { - BenchmarkReport benchmarkReport = BenchmarkResultInspector.isBenchmarkResultsValid(benchmarkResults); - return benchmarkReport; + private static boolean isAllBenchmarksOK(BenchmarkReport benchmarkReport) { + ObjectMapper om = new ObjectMapper(); + try { + String jsonReport = om.writeValueAsString(benchmarkReport); + return jsonReport.length() == 2; + } catch (JsonProcessingException e){ + e.printStackTrace(); + return false; + } } private static void printBenchmarkResults(BenchmarkReport benchmarkReport) { diff --git a/node-maintainer/src/main/java/com/yahoo/vespa/hosted/node/verification/spec/SpecVerifier.java b/node-maintainer/src/main/java/com/yahoo/vespa/hosted/node/verification/spec/SpecVerifier.java index bf5469f3a7c..0fcb6206237 100644 --- a/node-maintainer/src/main/java/com/yahoo/vespa/hosted/node/verification/spec/SpecVerifier.java +++ b/node-maintainer/src/main/java/com/yahoo/vespa/hosted/node/verification/spec/SpecVerifier.java @@ -59,7 +59,7 @@ public class SpecVerifier { } private static void printResults(VerificationReport verificationReport) { - //TODO: Instead of println, report JSON to YAMAS + //TODO: Instead of println, report JSON to node repo ObjectMapper om = new ObjectMapper(); try { System.out.println(om.writeValueAsString(verificationReport)); diff --git a/node-maintainer/src/test/java/com/yahoo/vespa/hosted/node/verification/hardware/BenchmarkResultInspectorTest.java b/node-maintainer/src/test/java/com/yahoo/vespa/hosted/node/verification/hardware/BenchmarkResultInspectorTest.java index 545524b467d..55f5af05771 100644 --- a/node-maintainer/src/test/java/com/yahoo/vespa/hosted/node/verification/hardware/BenchmarkResultInspectorTest.java +++ b/node-maintainer/src/test/java/com/yahoo/vespa/hosted/node/verification/hardware/BenchmarkResultInspectorTest.java @@ -35,7 +35,7 @@ public class BenchmarkResultInspectorTest { @Test public void isBenchmarkResultsValid_should_return_BenchmarkReport_with_all_values_null() { - BenchmarkReport benchmarkReport = BenchmarkResultInspector.isBenchmarkResultsValid(benchmarkResults); + BenchmarkReport benchmarkReport = BenchmarkResultInspector.makeBenchmarkReport(benchmarkResults); assertNull(benchmarkReport.getCpuCyclesPerSec()); assertNull(benchmarkReport.getDiskSpeedMbs()); assertNull(benchmarkReport.getMemoryReadSpeedGBs()); @@ -45,7 +45,7 @@ public class BenchmarkResultInspectorTest { @Test public void isBenchmarkResultsValid_should_only_set_cpu_frequency() { benchmarkResults.setCpuCyclesPerSec(INVALID_CPU_FREQUENCY); - BenchmarkReport benchmarkReport = BenchmarkResultInspector.isBenchmarkResultsValid(benchmarkResults); + BenchmarkReport benchmarkReport = BenchmarkResultInspector.makeBenchmarkReport(benchmarkResults); assertNotNull(benchmarkReport.getCpuCyclesPerSec()); assertNull(benchmarkReport.getDiskSpeedMbs()); assertNull(benchmarkReport.getMemoryReadSpeedGBs()); @@ -55,7 +55,7 @@ public class BenchmarkResultInspectorTest { @Test public void isBenchmarkResultsValid_should_only_set_disk_speed() { benchmarkResults.setDiskSpeedMbs(INVALID_DISK_SPEED); - BenchmarkReport benchmarkReport = BenchmarkResultInspector.isBenchmarkResultsValid(benchmarkResults); + BenchmarkReport benchmarkReport = BenchmarkResultInspector.makeBenchmarkReport(benchmarkResults); assertNull(benchmarkReport.getCpuCyclesPerSec()); assertNotNull(benchmarkReport.getDiskSpeedMbs()); assertNull(benchmarkReport.getMemoryReadSpeedGBs()); @@ -65,7 +65,7 @@ public class BenchmarkResultInspectorTest { @Test public void isBenchmarkResultsValid_should_only_set_memory_read_speed() { benchmarkResults.setMemoryReadSpeedGBs(INVALID_MEMORY_READ_SPEED); - BenchmarkReport benchmarkReport = BenchmarkResultInspector.isBenchmarkResultsValid(benchmarkResults); + BenchmarkReport benchmarkReport = BenchmarkResultInspector.makeBenchmarkReport(benchmarkResults); assertNull(benchmarkReport.getCpuCyclesPerSec()); assertNull(benchmarkReport.getDiskSpeedMbs()); assertNotNull(benchmarkReport.getMemoryReadSpeedGBs()); @@ -75,7 +75,7 @@ public class BenchmarkResultInspectorTest { @Test public void isBenchmarkResultsValid_should_only_set_memory_write_speed() { benchmarkResults.setMemoryWriteSpeedGBs(INVALID_MEMORY_WRITE_SPEED); - BenchmarkReport benchmarkReport = BenchmarkResultInspector.isBenchmarkResultsValid(benchmarkResults); + BenchmarkReport benchmarkReport = BenchmarkResultInspector.makeBenchmarkReport(benchmarkResults); assertNull(benchmarkReport.getCpuCyclesPerSec()); assertNull(benchmarkReport.getDiskSpeedMbs()); assertNull(benchmarkReport.getMemoryReadSpeedGBs()); |