In the future only DevicesDetection will handle browser and os archives, so we try to rename all existing archives of UserSettings plugin to their corresponding archive name in DevicesDetection plugin: - *UserSettings_browser* will now be *DevicesDetection_browserVersions* - *UserSettings_os* will now be *DevicesDetection_osVersions* Unlike DevicesDetection plugin, the UserSettings plugin did not store archives holding the os and browser data without their version number. The "version-less" reports were always generated out of the "version-containing" archives . For big archives (month/year) that ment that some of the data was truncated, due to the datatable entry limit. To avoid that data loss / inaccuracy in the future, DevicesDetection plugin will also store archives without the version. For data archived after DevicesDetection plugin was enabled, those archive already exist. As we are removing the UserSettings reports, there is a fallback in DevicesDetection API to build the report out of the datatable with versions. NOTE: Some archives might not contain "all" data. That might have happened directly after the day DevicesDetection plugin was enabled. For the days before, there were no archives calculated. So week/month/year archives will only contain data for the days, where archives were generated To find a date after which it is safe to use DevicesDetection archives we need to find the first day-archive that contains DevicesDetection data. Day archives will always contain full data, but week/month/year archives may not. So we need to recreate those week/month/year archives.
Наследование: extends Piwik\Updates
Пример #1
0
 public function setUp()
 {
     parent::setUp();
     Option::set('version_core', self::VERSION_TO_UPDATE_FROM);
     $this->oldScriptName = $_SERVER['SCRIPT_NAME'];
     $_SERVER['SCRIPT_NAME'] = $_SERVER['SCRIPT_NAME'] . " console";
     // update won't execute w/o this, see Common::isRunningConsoleCommand()
     ArchiveTableCreator::clear();
     DbHelper::getTablesInstalled($forceReload = true);
     // force reload so internal cache in Mysql.php is refreshed
     Updates_2_10_0_b5::$archiveBlobTables = null;
 }