diff --git a/scripts/Queries/FaultsDetected.pm b/scripts/Queries/FaultsDetected.pm new file mode 100644 index 0000000..94cee9c --- /dev/null +++ b/scripts/Queries/FaultsDetected.pm @@ -0,0 +1,30 @@ +package Queries::FaultsDetected; + +use strict; +use warnings; +use diagnostics; + +sub query { + my ($experiment) = @_; + + my $resulttype = 'DETECTED_MARKER'; + + return +"SELECT CONCAT('0x', HEX(p.injection_instr_absolute)) AS fault_address, SUM(t.time2 - t.time1 + 1) AS total_results +FROM trace t +JOIN variant v ON v.id = t.variant_id +JOIN fspgroup g ON g.variant_id = t.variant_id AND g.instr2 = t.instr2 AND g.data_address = t.data_address +JOIN result_GenericExperimentMessage r ON r.pilot_id = g.pilot_id +JOIN fsppilot p ON p.id = r.pilot_id +WHERE v.variant = '$experiment' AND r.resulttype = '$resulttype' +GROUP BY p.injection_instr_absolute +ORDER BY SUM(t.time2 - t.time1 + 1) DESC;" +} + +sub args { return "--batch --raw"; } + +sub filename { return "faults_detected.csv"; } + +sub postprocess { $_[0] =~ s/\t/,/g; } + +1;