diff options
author | sgiehl <stefan@matomo.org> | 2020-04-28 15:19:56 +0300 |
---|---|---|
committer | sgiehl <stefan@matomo.org> | 2020-04-28 15:19:56 +0300 |
commit | bed0c2659e174b9697ab30556b43e79dcea24ca3 (patch) | |
tree | a857a5110c492a0227088c1291509dfb489a2e9b /plugins/CoreAdminHome | |
parent | 69a65613e645cbd153221ca1bbdd5d9d0e2b08b4 (diff) | |
parent | 1534367810d12bc9f50571d1dde02b153dae0d6a (diff) |
Merge branch '3.x-dev' into 4.x-dev
Diffstat (limited to 'plugins/CoreAdminHome')
-rw-r--r-- | plugins/CoreAdminHome/Tasks.php | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/plugins/CoreAdminHome/Tasks.php b/plugins/CoreAdminHome/Tasks.php index 0c52be3b57..c3afd5562d 100644 --- a/plugins/CoreAdminHome/Tasks.php +++ b/plugins/CoreAdminHome/Tasks.php @@ -253,11 +253,30 @@ class Tasks extends \Piwik\Plugin\Tasks public function purgeInvalidatedArchives() { + $purgedDates = []; + $archivesToPurge = new ArchivesToPurgeDistributedList(); foreach ($archivesToPurge->getAllAsDates() as $date) { $this->archivePurger->purgeInvalidatedArchivesFrom($date); $archivesToPurge->removeDate($date); + + $purgedDates[$date->toString('Y-m')] = true; + } + + // purge from today if not done already since we will have many archives to remove + $today = Date::today(); + $todayStr = $today->toString('Y-m'); + if (empty($purgedDates[$todayStr])) { + $this->archivePurger->purgeInvalidatedArchivesFrom($today); + $purgedDates[$todayStr] = true; + } + + // handle yesterday if it belongs to a different month + $yesterday = Date::yesterday(); + $yesterdayStr = $yesterday->toString('Y-m'); + if (empty($purgedDates[$yesterdayStr])) { + $this->archivePurger->purgeInvalidatedArchivesFrom($yesterday); } } |