prune-trace: limit row deletion to the pruner's FSP method

Otherwise it's not possible to keep a "basic" and a "sampling" pruned
version of one variant in the same database.

Change-Id: Ic71eb27ea16df23e2289cbf9f96ae10209745791
This commit is contained in:
Horst Schirmeier
2014-04-30 17:42:32 +02:00
parent 0cf5a34a9f
commit 5efebea5d1

View File

@ -79,12 +79,14 @@ bool Pruner::create_database() {
bool Pruner::clear_database() {
std::stringstream ss;
ss << "DELETE FROM fsppilot WHERE variant_id IN (" << m_variant_id_query << ")";
ss << "DELETE FROM fsppilot WHERE variant_id IN (" << m_variant_id_query
<< ") AND fspmethod_id = " << m_method_id;
bool ret = (bool) db->query(ss.str().c_str());
LOG << "deleted " << db->affected_rows() << " rows from fsppilot table" << std::endl;
ss.str("");
ss << "DELETE FROM fspgroup WHERE variant_id IN (" << m_variant_id_query << ")";
ss << "DELETE FROM fspgroup WHERE variant_id IN (" << m_variant_id_query
<< ") AND fspmethod_id = " << m_method_id;
ret = ret && (bool) db->query(ss.str().c_str());
LOG << "deleted " << db->affected_rows() << " rows from fspgroup table" << std::endl;