diff options
author | Thomas Steur <thomas.steur@googlemail.com> | 2014-07-03 06:09:25 +0400 |
---|---|---|
committer | Thomas Steur <thomas.steur@googlemail.com> | 2014-07-03 06:09:25 +0400 |
commit | b561654115cd6a12d628364eb7aadf54cf4766d6 (patch) | |
tree | e826db41fb80c20b48ddb9cae753d7a1c2bbf671 /plugins/CoreUpdater/CoreUpdater.php | |
parent | 76f63ca6cc10ee60d4206dd0079080638814f8cc (diff) |
by checking for dimension version changes only if there was a file change we gain another 100ms or more per page request. Otherwise we would have to load all dimensions on each request just to check for new version
Diffstat (limited to 'plugins/CoreUpdater/CoreUpdater.php')
-rw-r--r-- | plugins/CoreUpdater/CoreUpdater.php | 34 |
1 files changed, 10 insertions, 24 deletions
diff --git a/plugins/CoreUpdater/CoreUpdater.php b/plugins/CoreUpdater/CoreUpdater.php index 48a1cb42b7..05bb59d538 100644 --- a/plugins/CoreUpdater/CoreUpdater.php +++ b/plugins/CoreUpdater/CoreUpdater.php @@ -14,9 +14,7 @@ use Piwik\Common; use Piwik\Filesystem; use Piwik\FrontController; use Piwik\Piwik; -use Piwik\Plugin\Dimension\ActionDimension; -use Piwik\Plugin\Dimension\VisitDimension; -use Piwik\Plugin\Dimension\ConversionDimension; +use Piwik\Columns\Updater as ColumnsUpdater; use Piwik\ScheduledTime; use Piwik\UpdateCheck; use Piwik\Updater; @@ -101,31 +99,19 @@ class CoreUpdater extends \Piwik\Plugin } } - foreach (VisitDimension::getAllDimensions() as $dimension) { - $columnName = $dimension->getColumnName(); - if ($columnName) { - $updater->addComponentToCheck('log_visit.' . $columnName, $dimension->getVersion()); - } + $columnsVersions = ColumnsUpdater::getAllVersions(); + foreach ($columnsVersions as $component => $version) { + $updater->addComponentToCheck($component, $version); } - foreach (ActionDimension::getAllDimensions() as $dimension) { - $columnName = $dimension->getColumnName(); - if ($columnName) { - $updater->addComponentToCheck('log_link_visit_action.' . $columnName, $dimension->getVersion()); - } - } + $componentsWithUpdateFile = $updater->getComponentsWithUpdateFile(); - foreach (ConversionDimension::getAllDimensions() as $dimension) { - $columnName = $dimension->getColumnName(); - if ($columnName) { - $updater->addComponentToCheck('log_conversion.' . $columnName, $dimension->getVersion()); - } - } + if (count($componentsWithUpdateFile) == 0) { + ColumnsUpdater::onNoUpdateAvailable($columnsVersions); - $componentsWithUpdateFile = $updater->getComponentsWithUpdateFile(); - if (count($componentsWithUpdateFile) == 0 - && !$updater->hasNewVersion('core')) { - return null; + if (!$updater->hasNewVersion('core')) { + return null; + } } return $componentsWithUpdateFile; |