Broken Piwik after PHP upgrade to 5.2.11


(eugene) #1

Hosting provider upgrated php recently and Piwik fall out of work. Showing errors:
Declaration of Piwik_Log_APICall::log() should be compatible with that of Piwik_Log::log()
in ‘/home/h14u41/public_html/e-admin/piwik/core/Log/APICall.php’ at the line 52

#0 Piwik_ErrorHandler(2048, Declaration of Piwik_Log_APICall::log() should be compatible with that of Piwik_Log::log(), /home/h14u41/public_html/e-admin/piwik/core/Log/APICall.php, 52, Array ()) called at [(null):0]
#1 Piwik::createLogObject() called at [/home/h14u41/public_html/e-admin/piwik/core/Piwik.php:1028]
#2 Piwik::createLogObject() called at [/home/h14u41/public_html/e-admin/piwik/core/FrontController.php:234]
#3 Piwik_FrontController->init() called at [/home/h14u41/public_html/e-admin/piwik/index.php:51]

After reinstalling on clean DB it is starting to print endlessly some coding like:
Warning: fwrite(): supplied argument is not a valid stream resource in /home/h5u1492/public_html/e-admin/piwik/core/Piwik.php on line 999 Backtrace -->#0 Piwik_ErrorHandler(2, fwrite(): supplied argument is not a valid stream resource, /home/h5u1492/public_html/e-admin/piwik/core/Piwik.php, 999, Array ([aUrl] => xxxxxxx/1.0/getLatestVersion/?piwik_version=0.4.3&php_version=5.2.11&url=xxxxxxxxxxxxxxxxxxxxxxxxxxx%2Fe-admin%2Fpiwik%2F&trigger=,[timeout] => 2,[userAgent] => ,[destinationPath] => ,[followDepth] => 0,[file] => ,[url] => Array ([scheme] => http,[host] => api.piwik.org,[path] => /1.0/getLatestVersion/,[query] => piwik_version=0.4.3&php_version=5.2.11&url=xxxxxxxxxxxxxxxxxxxxxxxxxxx%2Fe-admin%2Fpiwik%2F&trigger=),[host] => api.piwik.org,[port] => 80,[path] => /1.0/getLatestVersion/?piwik_version=0.4.3&php_version=5.2.11&url=xxxxxxx%2Fe-admin%2Fpiwik%2F&trigger=,[errno] => ,[errstr] => ,[fsock] => )) called at [(null):0] #1 fwrite(, GET /1.0/getLatestVersion/?piwik_version=0.4.3&php_version=5.2.11&url=xxxxxxxxxxxxxxxxxxxxxxxxxxx%2Fe-admin%2Fpiwik%2F&trigger= HTTP/1.0 Host: api.piwik.org User-Agent: Piwik/0.4.3 Referer: Connection: close ) called at [/home/h5u1492/public_html/e-admin/piwik/core/Piwik.php:999] #2 Piwik::sendHttpRequest(xxxxxxx/1.0/getLatestVersion/?piwik_version=0.4.3&php_version=5.2.11&url=xxxxxxxxxxxxxxxxxxxxxxxxxxx%2Fe-admin%2Fpiwik%2F&trigger=, 2) called at [/home/h5u1492/public_html/e-admin/piwik/core/UpdateCheck.php:35] #3 Piwik_UpdateCheck::check() called at [/home/h5u1492/public_html/e-admin/piwik/core/FrontController.php:237] #4 Piwik_FrontController->init() called at [/home/h5u1492/public_html/e-admin/piwik/index.php:64] Warning: feof(): supplied argument is not a valid stream resource in /home/h5u1492/public_html/e-admin/piwik/core/Piwik.php on line 1011 Backtrace -->#0 Piwik_ErrorHandler(2, feof(): supplied argument is not a valid stream resource, /home/h5u1492/public_html/e-admin/piwik/core/Piwik.php, 1011, Array ([aUrl] => xxxxxxx/1.0/getLatestVersion/?piwik_version=0.4.3&php_version=5.2.11&url=xxxxxxxxxxxxxxxxxxxxxxxxxxx%2Fe-admin%2Fpiwik%2F&trigger=,[timeout] => 2,[userAgent] => ,[destinationPath] => ,[followDepth] => 0,[file] => ,[url] => Array ([scheme] => http,[host] => api.piwik.org,[path] => /1.0/getLatestVersion/,[query] => piwik_version=0.4.3&php_version=5.2.11&url=xxxxxxxxxxxxxxxxxxxxxxxxxxx%2Fe-admin%2Fpiwik%2F&trigger=),[host] => api.piwik.org,[port] => 80,[path] => /1.0/getLatestVersion/?piwik_version=0.4.3&php_version=5.2.11&url=xxxxxxxxxxxxxxxxxxxxxxxxxxx%2Fe-admin%2Fpiwik%2F&trigger=,[errno] => ,[errstr] => ,[fsock] => ,[streamMetaData] => Array ([timed_out] => ),[status] => ,[expectRedirect] => ,[contentLength] => 0,[fileLength] => 0)) called at [(null):0] #1 feof() called at [/home/h5u1492/public_html/e-admin/piwik/core/Piwik.php:1011] #2 Piwik::sendHttpRequest(xxxxxxx/1.0/getLatestVersion/?piwik_version=0.4.3&php_version=5.2.11&url=xxxxxxxxxxxxxxxxxxxxxxxxxxx%2Fe-admin%2Fpiwik%2F&trigger=, 2) called at [/home/h5u1492/public_html/e-admin/piwik/core/UpdateCheck.php:35] #3

and so on, and so on. Please help.

P.S. Had to replace all links onto xxxxxxxxxxxxxxxxx as wasn’t able to post.


(vipsoft) #2

In 0.4.3, we changed sendHttpRequest() to use sockets instead of curl. Sockets are disabled by your host. This is fixed in SVN to detect the best transport method available (i.e., sockets, curl, or streams).

In the meantime, comment out the update check in core/FrontController.php:

//                        Piwik_PostEvent('FrontController.checkForUpdates');