Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fatal error on installation: Call to private method #6680

Closed
Joey3000 opened this issue Nov 15, 2014 · 3 comments
Closed

Fatal error on installation: Call to private method #6680

Joey3000 opened this issue Nov 15, 2014 · 3 comments

Comments

@Joey3000
Copy link
Contributor

Following error occurs on installation of Piwik 2.9.0. (On http://.../index.php?action=tablesCreation&module=Installation)

Fatal error: Call to private method Piwik\Plugins\Installation\Controller::hasEnoughTablesToReuseDb() from context '' in /.../plugins/Installation/Controller.php on line 204

Notes:

  • The installation was done by first manually deleting all files of the previously used version 1.12 (but keeping the database) and then FTP uploading the new version files.
  • Since that was done on a test site, the re-used DB content is small.
  • A shared provider is used, whereby ini_set() is disabled, among other things. No access to php.ini.
  • Following files had been patched before upload, equally to the previously used version 1.12 (hence equal file integrity failure detection by Piwik, for these 4 files only):
    -- "@" added before the ini_set():
    /core/Mail.php
    /libs/Zend/Session.php
    /misc/others/geoipUpdateRows.php

-- ini_set() presence check commented out:
/core/testMinimumPhpVersion.php

  • If the call to hasEnoughTablesToReuseDb() shown in the above error gets commented out, following memory limitation fatal error occurs (on various lines of /vendor/leafo/lessphp/lessc.inc.php upon page reload), still causing the installation to fail:
    Fatal error: Allowed memory size of 50331648 bytes exhausted (tried to allocate 81 bytes) in /vendor/leafo/lessphp/lessc.inc.php on line 1712
  • Sys info: Apache, cgi-fcgi, PHP 5.3.6, MySql 5.1.73-1+deb6u1.
@Joey3000
Copy link
Contributor Author

Piwik system check info:
piwik_system_check_1
piwik_system_check_2

@mattab mattab closed this as completed in 4e5610a Nov 15, 2014
@mattab
Copy link
Member

mattab commented Nov 15, 2014

Thanks for report, it's fixed. Before you apply the patch, could you click on the System check failure on the link Details ? it will show the list of files that are not uploaded properly. You can try re-upload thos files first from 2.9.0.

Regarding the memory error see this faq

@Joey3000
Copy link
Contributor Author

Thanks very much for the quick fix. The "Call to private method" error no longer appears.

Thanks for report, it's fixed. Before you apply the patch, could you click on the System check failure on the link Details ? it will show the list of files that are not uploaded properly. You can try re-upload thos files first from 2.9.0.

Those are just the mentioned 4 files where I did the following modifications (as I had also done on Piwik 1.12), because ini_set() is disabled by the shared host:

-- "@" added before the ini_set() where missing:
/core/Mail.php
/libs/Zend/Session.php
/misc/others/geoipUpdateRows.php

-- ini_set() presence check commented out:
/core/testMinimumPhpVersion.php

Regarding the memory error see this faq

Thanks for the info. But since I don't have access to php.ini on the shared host to increase the memory allocation, I'll have to stick with the currently used Piwik 1.12 until they do it, since it seems that the memory usage of the current version is higher. (Even on installation; my traffic is tiny.) Or I might try one of the intermediate versions. Just wanted to let you know about the "Call to private method" error anyway.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants