diff --git a/core/ArchiveProcessor.php b/core/ArchiveProcessor.php index 6aa62cdc9d2b9e9b25be6676f601c97819fbb1df..a8eaaf70568ee8f2300dc553fb190533ad5b2955 100644 --- a/core/ArchiveProcessor.php +++ b/core/ArchiveProcessor.php @@ -194,8 +194,6 @@ class ArchiveProcessor &$columnsAggregationOperation = null, $columnsToRenameAfterAggregation = null) { - // We clean up below all tables created during this function call (and recursive calls) - $latestUsedTableId = Manager::getInstance()->getMostRecentTableId(); if (!is_array($recordNames)) { $recordNames = array($recordNames); } @@ -210,7 +208,6 @@ class ArchiveProcessor Common::destroy($table); $this->insertBlobRecord($recordName, $blob); } - Manager::getInstance()->deleteAll($latestUsedTableId); return $nameToCount; } diff --git a/core/ArchiveProcessor/PluginsArchiver.php b/core/ArchiveProcessor/PluginsArchiver.php index 671e8272fbcdb600984623b6d6efadaf5a1e5e48..c8a6859b53119b7dda7da4a4643bf162cdd861df 100644 --- a/core/ArchiveProcessor/PluginsArchiver.php +++ b/core/ArchiveProcessor/PluginsArchiver.php @@ -15,6 +15,7 @@ use Piwik\Archive; use Piwik\ArchiveProcessor; use Piwik\DataAccess\ArchiveSelector; use Piwik\DataAccess\ArchiveWriter; +use Piwik\DataTable\Manager; use Piwik\Metrics; use Piwik\Plugin\Archiver; @@ -87,6 +88,10 @@ class PluginsArchiver $archivers = $this->getPluginArchivers(); foreach($archivers as $pluginName => $archiverClass) { + + // We clean up below all tables created during this function call (and recursive calls) + $latestUsedTableId = Manager::getInstance()->getMostRecentTableId(); + /** @var Archiver $archiver */ $archiver = new $archiverClass($this->archiveProcessor); @@ -97,6 +102,9 @@ class PluginsArchiver $archiver->aggregateMultipleReports(); } } + + Manager::getInstance()->deleteAll($latestUsedTableId); + unset($archiver); } }