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