Archive tables are not optimized after, as that is handled by a separate scheduled task
in CoreAdminHome. This is a scheduled task and will only execute every N days. The number
of days is determined by the delete_logs_schedule_lowest_interval config option.
If delete_reports_enable is set to 1, old archive data is deleted. The following
config options can tweak this behavior:
- delete_reports_older_than: The number of months after which archive data is considered
old. The current month is not considered when applying this
value.
- delete_reports_keep_basic_metrics: If set to 1, keeps certain metric data. Right now,
all metric data is kept.
- delete_reports_keep_day_reports: If set to 1, keeps old daily reports.
- delete_reports_keep_week_reports: If set to 1, keeps old weekly reports.
- delete_reports_keep_month_reports: If set to 1, keeps old monthly reports.
- delete_reports_keep_year_reports: If set to 1, keeps old yearly reports.
public deleteReportData ( ) |
/** * Tests that purgeData works correctly when the 'keep segment reports' setting is set to true. * * @group Integration */ public function testPurgeDataDeleteReportsKeepSegmentsReports() { PrivacyManager::savePurgeDataSettings(array('delete_reports_keep_day_reports' => 1, 'delete_reports_keep_segment_reports' => 1)); // get purge data prediction $prediction = PrivacyManager::getPurgeEstimate(); // perform checks on prediction $events = 3; // only the event action for the three purged day, dayAgo=x are purged (others are still in use) $expectedPrediction = array(Common::prefixTable('log_conversion') => 6, Common::prefixTable('log_link_visit_action') => 6 + $events, Common::prefixTable('log_visit') => 3, Common::prefixTable('log_conversion_item') => 3, Common::prefixTable('archive_numeric_2012_01') => -1, Common::prefixTable('archive_blob_2012_01') => 9); $this->assertEquals($expectedPrediction, $prediction); // purge data $this->_setTimeToRun(); $this->assertTrue($this->instance->deleteLogData()); $this->assertTrue($this->instance->deleteReportData()); // perform checks $this->checkLogDataPurged(); $this->_checkReportsAndMetricsPurged($janBlobsRemaining = 6, $janNumericRemaining = 70); // 1 segmented blob + 5 day blobs }