Combine query filters instead of combining them
This commit is contained in:
@@ -134,7 +134,7 @@ sub find_subdirs {
|
||||
|
||||
sub execute_query {
|
||||
my ( $experiment, $queryname, $db_conf, $builds_dir, $do_notify_file,
|
||||
$filter_config_name )
|
||||
@filter_config_names )
|
||||
= @_;
|
||||
|
||||
my $module = "$queryname";
|
||||
@@ -150,9 +150,9 @@ sub execute_query {
|
||||
or die "$module can't postprocess()";
|
||||
|
||||
my $querystring =
|
||||
$query->( $experiment, "$builds_dir/$experiment", $filter_config_name );
|
||||
$query->( $experiment, "$builds_dir/$experiment", @filter_config_names );
|
||||
my $argsstring = $args->();
|
||||
my $filenamestring = $filename->($filter_config_name);
|
||||
my $filenamestring = $filename->(@filter_config_names);
|
||||
|
||||
# TODO: Pass the values instead of rewriting db.conf.
|
||||
# Can also use DBI's database handle directly.
|
||||
|
||||
@@ -11,11 +11,10 @@ use Filters;
|
||||
use feature 'say';
|
||||
|
||||
sub query {
|
||||
my ( $experiment, $experiment_dir, $filter_config_name ) = @_;
|
||||
$filter_config_name //= '';
|
||||
my ( $experiment, $experiment_dir, @filter_config_names ) = @_;
|
||||
|
||||
my $filters =
|
||||
Filters::build_filter_clause( $experiment_dir, $filter_config_name );
|
||||
Filters::build_filter_clause( $experiment_dir, @filter_config_names );
|
||||
|
||||
my $querystring = "SELECT
|
||||
benchmark, resulttype, SUM(t.time2 - t.time1 + 1) AS faults,
|
||||
@@ -43,9 +42,9 @@ ORDER BY benchmark, resulttype, SUM(t.time2 - t.time1 + 1) DESC;";
|
||||
sub args { return "--batch --raw"; }
|
||||
|
||||
sub filename {
|
||||
my ($filter_config_name) = @_;
|
||||
$filter_config_name //= '';
|
||||
my $suffix = length($filter_config_name) ? "_$filter_config_name" : "";
|
||||
my @filter_config_names = grep { defined && length } @_;
|
||||
my $suffix =
|
||||
@filter_config_names ? "_" . join( "+", sort @filter_config_names ) : "";
|
||||
return "faults${suffix}.csv";
|
||||
}
|
||||
|
||||
|
||||
@@ -11,11 +11,10 @@ use Filters;
|
||||
use feature 'say';
|
||||
|
||||
sub query {
|
||||
my ( $experiment, $experiment_dir, $filter_config_name ) = @_;
|
||||
$filter_config_name //= '';
|
||||
my ( $experiment, $experiment_dir, @filter_config_names ) = @_;
|
||||
|
||||
my $filters =
|
||||
Filters::build_filter_clause( $experiment_dir, $filter_config_name );
|
||||
Filters::build_filter_clause( $experiment_dir, @filter_config_names );
|
||||
|
||||
my $querystring = "SELECT
|
||||
CASE
|
||||
@@ -41,9 +40,9 @@ ORDER BY count DESC;";
|
||||
sub args { return "--batch --raw"; }
|
||||
|
||||
sub filename {
|
||||
my ($filter_config_name) = @_;
|
||||
$filter_config_name //= '';
|
||||
my $suffix = length($filter_config_name) ? "_$filter_config_name" : "";
|
||||
my @filter_config_names = grep { defined && length } @_;
|
||||
my $suffix =
|
||||
@filter_config_names ? "_" . join( "+", sort @filter_config_names ) : "";
|
||||
return "mnemonics${suffix}.csv";
|
||||
}
|
||||
|
||||
|
||||
@@ -11,11 +11,10 @@ use Filters;
|
||||
use feature 'say';
|
||||
|
||||
sub query {
|
||||
my ( $experiment, $experiment_dir, $filter_config_name ) = @_;
|
||||
$filter_config_name //= '';
|
||||
my ( $experiment, $experiment_dir, @filter_config_names ) = @_;
|
||||
|
||||
my $extra =
|
||||
Filters::build_filter_clause( $experiment_dir, $filter_config_name );
|
||||
Filters::build_filter_clause( $experiment_dir, @filter_config_names );
|
||||
|
||||
my $querystring = "SELECT
|
||||
benchmark, resulttype, sum(t.time2 - t.time1 + 1) AS faults
|
||||
@@ -36,9 +35,9 @@ ORDER BY variant, benchmark, resulttype;";
|
||||
sub args { return "-t"; }
|
||||
|
||||
sub filename {
|
||||
my ($filter_config_name) = @_;
|
||||
$filter_config_name //= '';
|
||||
my $suffix = length($filter_config_name) ? "_$filter_config_name" : "";
|
||||
my @filter_config_names = grep { defined && length } @_;
|
||||
my $suffix =
|
||||
@filter_config_names ? "_" . join( "+", sort @filter_config_names ) : "";
|
||||
return "results${suffix}.txt";
|
||||
}
|
||||
|
||||
|
||||
@@ -11,11 +11,10 @@ use Filters;
|
||||
use feature 'say';
|
||||
|
||||
sub query {
|
||||
my ( $experiment, $experiment_dir, $filter_config_name ) = @_;
|
||||
$filter_config_name //= '';
|
||||
my ( $experiment, $experiment_dir, @filter_config_names ) = @_;
|
||||
|
||||
my $extra =
|
||||
Filters::build_filter_clause( $experiment_dir, $filter_config_name );
|
||||
Filters::build_filter_clause( $experiment_dir, @filter_config_names );
|
||||
|
||||
my $querystring = "SELECT
|
||||
benchmark, resulttype, sum(t.time2 - t.time1 + 1) AS faults
|
||||
@@ -36,9 +35,9 @@ ORDER BY variant, benchmark, resulttype;";
|
||||
sub args { return "--batch --raw"; }
|
||||
|
||||
sub filename {
|
||||
my ($filter_config_name) = @_;
|
||||
$filter_config_name //= '';
|
||||
my $suffix = length($filter_config_name) ? "_$filter_config_name" : "";
|
||||
my @filter_config_names = grep { defined && length } @_;
|
||||
my $suffix =
|
||||
@filter_config_names ? "_" . join( "+", sort @filter_config_names ) : "";
|
||||
return "resultsdata${suffix}.csv";
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user