Files
fail/tools/prune-trace/Pruner.hpp
Horst Schirmeier 56bfa6c693 tools/prune-trace: various improvements
- Variants/benchmarks can now be selected with wildcards
  (--variant/--benchmark), and can be excluded from pruning
  (--variant-exclude/--benchmark-exclude).
- The database clearing step can be skipped with --no-delete to
  avoid deadlocks with concurrent DB accesses.
- Internals:
  * injection_instr / injection_instr_absolute moves from
    fspgroup to fsppilot.  fsppilot now contains all information we
    need for running FI experiments.
    TODO: generic campaign needs to be modified, too.
  * Force MySQL to use an efficient join order (STRAIGHT_JOIN).

Change-Id: I6241ea2de9da1a1e709fae6374df4fc06ef262a0
2013-04-22 14:24:50 +02:00

30 lines
594 B
C++

#ifndef __PRUNER_H__
#define __PRUNER_H__
#include <vector>
#include <string>
#include "util/Database.hpp"
class Pruner {
protected:
int m_method_id;
std::string m_variant_id_query;
fail::Database *db;
public:
bool init(fail::Database *db,
const std::vector<std::string>& variants,
const std::vector<std::string>& variants_exclude,
const std::vector<std::string>& benchmarks,
const std::vector<std::string>& benchmarks_exclude);
virtual std::string method_name() = 0;
virtual bool create_database();
virtual bool clear_database();
virtual bool prune_all() = 0;
};
#endif