[horde] [kronolith] Errors after upgrade to pecl_http 2 / Horde_Http 2.1.1

Jan Schneider jan at horde.org
Sat May 24 19:46:59 UTC 2014


Zitat von Simon Wilson <simon at simonandkate.net>:

> ----- Message from Jan Schneider <jan at horde.org> ---------
>    Date: Fri, 23 May 2014 17:14:56 +0200
>    From: Jan Schneider <jan at horde.org>
> Subject: Re: [horde] [kronolith] Errors after upgrade to pecl_http 2  
> / Horde_Http 2.1.1
>      To: horde at lists.horde.org
>
>
>> Zitat von simon at simonandkate.net:
>>
>>>> On 21 May 2014, at 7:55 pm, Simon Wilson <simon at simonandkate.net> wrote:
>>>>
>>>>
>>>> Title / email copied from osdir email exchange...
>>>>
>>>> Original email exchange:
>>>>
>>>> After the recent upgrades to Horde_Http and pecl_http our users  
>>>> can not add
>>>> attendees to an event in Kronolith. In basic view an empty page is shown
>>>> where the f/b info should be displayed, while dynamic view gives an "Error
>>>> when communicating with the server."
>>>>
>>>> The Apache (Debian Apache/2.2.22, PHP/5.4.4) log file shows:
>>>>
>>>> "PHP Fatal error: Undefined constant 'http\\Client\\Curl\\AUTH_ANY' in
>>>> /usr/share/php/Horde/Http/Request/Factory.php on line 29"
>>>>
>>>> There is no such constant on this line.
>>>>
>>>> Is this a bug or is my PEAR or pecl installation somehow messed up? Any
>>>> other hints on diagnosing this behaviour?
>>>>
>>>> Thanks,
>>>>
>>>> Volker
>>>>
>>>> --
>>>> Jan Schneider
>>>>
>>>> My issue:
>>>> Horde 5.1.6, ContOS 6.5, Apache 2.2.15, PHP 5.3.28
>>>>
>>>> I did a bunch of upgrades yesterday, included the pecl_http  
>>>> upgrade. First of
>>>> all pecl_http would not run at all as it tried to load it before
>>>> json.so, so was failing.
>>>>
>>>> I fixed that this evening by moving json.so to before http.so in  
>>>> php.ini so that the extensions all load nicely.
>>>>
>>>> Then my httpd log floods constantly with:
>>>>
>>>> [Wed May 21 19:36:15 2014] [error] [client 49.181.68.85] PHP  
>>>> Fatal error:  Undefined constant 'http\\Client\\Curl\\AUTH_ANY'  
>>>> in /usr/share/pear/Horde/Http/Request/Factory.php on line 29
>>>>
>>>> About one per second, constantly. And a bunch of things no longer work
>>>> in Horde (e.g. I tried to go to Configuration / PHPShell page, and
>>>> just got a white page).
>>>>
>>>> I tried uninstalling / reinstalling pecl_http propro and raphf as
>>>> fixed the issue for Volker, but made no difference here.
>>>>
>>>> For now the only way I can get functional is to comment out
>>>> extension=http.so in php.ini, which I assume pushes Horde back to Curl...
>>>>
>>>> Any ideas what is happening?
>>>>
>>>> Simon
>>>>
>>>> ***************
>>>>
>>>> Basic backtrace (line number is plus 1 :
>>>>
>>>> 2014-05-21T19:44:36+10:00 DEBUG: Backtrace:
>>>> 1. Horde_Rpc_ActiveSync->getResponse() /var/www/horde/rpc.php:156
>>>> 2. Horde_ActiveSync->handleRequest()  
>>>> /usr/share/pear/Horde/Rpc/ActiveSync.php:143
>>>> 3. Horde_ActiveSync_Request_Base->handle()  
>>>> /usr/share/pear/Horde/ActiveSync.php:880
>>>> 4. Horde_ActiveSync_Request_Ping->_handle()  
>>>> /usr/share/pear/Horde/ActiveSync/Request/Base.php:250
>>>> 5. Horde_ActiveSync_Collections->pollForChanges()  
>>>> /usr/share/pear/Horde/ActiveSync/Request/Ping.php:222
>>>> 6. Horde_ActiveSync_Collections->getCollectionChangeCount()  
>>>> /usr/share/pear/Horde/ActiveSync/Collections.php:1074
>>>> 7. Horde_ActiveSync_Collections->getCollectionChanges()  
>>>> /usr/share/pear/Horde/ActiveSync/Collections.php:1259
>>>> 8. Horde_ActiveSync_State_Base->getChanges()  
>>>> /usr/share/pear/Horde/ActiveSync/Collections.php:1223
>>>> 9. Horde_Core_ActiveSync_Driver->getSyncStamp()  
>>>> /usr/share/pear/Horde/ActiveSync/State/Base.php:420
>>>> 10. Horde_Core_ActiveSync_Connector->getHighestModSeq()  
>>>> /usr/share/pear/Horde/Core/ActiveSync/Driver.php:2382
>>>> 11. Horde_Registry_Caller->getHighestModSeq()  
>>>> /usr/share/pear/Horde/Core/ActiveSync/Connector.php:596
>>>> 12. Horde_Registry_Caller->__call()  
>>>> /usr/share/pear/Horde/Core/ActiveSync/Connector.php:596
>>>> 13. Horde_Registry->call() /usr/share/pear/Horde/Registry/Caller.php:41
>>>> 14. Horde_Registry->callByPackage()  
>>>> /usr/share/pear/Horde/Registry.php:1105
>>>> 15. Horde_Registry->pushApp() /usr/share/pear/Horde/Registry.php:1145
>>>> 16. Horde_Registry->callAppMethod()  
>>>> /usr/share/pear/Horde/Registry.php:1601
>>>> 17. call_user_func_array() /usr/share/pear/Horde/Registry.php:1213
>>>> 18. Horde_Registry_Application->init()
>>>> 19. Kronolith_Application->_init()  
>>>> /usr/share/pear/Horde/Registry/Application.php:105
>>>> 20. Kronolith::initialize()  
>>>> /var/www/horde/kronolith/lib/Application.php:86
>>>> 21. Horde_Registry->call() /var/www/horde/kronolith/lib/Kronolith.php:917
>>>> 22. Horde_Registry->callByPackage()  
>>>> /usr/share/pear/Horde/Registry.php:1105
>>>> 23. Horde_Registry->pushApp() /usr/share/pear/Horde/Registry.php:1145
>>>> 24. Horde_Registry->callAppMethod()  
>>>> /usr/share/pear/Horde/Registry.php:1601
>>>> 25. call_user_func_array() /usr/share/pear/Horde/Registry.php:1213
>>>> 26. Horde_Registry_Application->init()
>>>> 27. Turba_Application->_init()  
>>>> /usr/share/pear/Horde/Registry/Application.php:105
>>>> 28. Turba::availableSources() /var/www/horde/turba/lib/Application.php:80
>>>> 29. Horde::loadConfiguration() /var/www/horde/turba/lib/Turba.php:45
>>>> 30. include() /usr/share/pear/Horde.php:356
>>>> 31. Horde_Injector->getInstance()  
>>>> /var/www/horde/turba/config/backends.php:800
>>>> 32. Horde_Injector->createInstance()  
>>>> /usr/share/pear/Horde/Injector.php:258
>>>> 33. Horde_Injector_Binder_Factory->create()  
>>>> /usr/share/pear/Horde/Injector.php:224
>>>> 34. Horde_Core_Factory_Facebook->create()  
>>>> /usr/share/pear/Horde/Injector/Binder/Factory.php:111
>>>> 35. Horde_Core_Factory_HttpClient->create()  
>>>> /usr/share/pear/Horde/Core/Factory/Facebook.php:24
>>>> 36. Horde_Http_Client->__construct()  
>>>> /usr/share/pear/Horde/Core/Factory/HttpClient.php:32
>>>> 37. Horde_Http_Request_Factory->create()  
>>>> /usr/share/pear/Horde/Http/Client.php:98
>>>> 38. Horde::debug() /usr/share/pear/Horde/Http/Request/Factory.php:29
>>>>
>>>>
>>>>
>>>> --
>>>> Simon Wilson
>>>> M: 0400 12 11 16
>>>> <mime-attachment>
>>>> --
>>>> Horde mailing list
>>>> Frequently Asked Questions: http://horde.org/faq/
>>>> To unsubscribe, mail: horde-unsubscribe at lists.horde.org
>>>
>>> Any ideas? Should I log a bug report?
>>>
>>> Simon
>>
>> No, because it still doesn't make any sense. The file that triggers  
>> the error is only loaded if the \http\Client class exists, which  
>> only exists in pecl_http 2. And this version always contains the  
>> constant that PHP complains about. So you must have either a  
>> completely broken PHP, BC cache or PECL extensions. Neither is  
>> anything that Horde has to do with.
>>
>> -- 
>> Jan Schneider
>
> Pecl_http is 2.0.6, has been uninstalled and reinstalled, along with  
> raphf 1.0.4 and propro 1.0.0.
> PHP is 5.3.28 and works fine for everything else... and has done  
> every time I've been told before that 'your php is broken' and it's  
> proven to be bugs in other packages... :-/
> Cache is xcache, and also works fine for everything else.
>
> The upgrade process that installed pecl_http was 'pear upgrade -a -c  
> horde'. Should be ok, and has installed everything ok, pulled in  
> everything it needed, installed the pecl packages (albeit in the  
> wrong order in php.ini and php.d, which had to be fixed).
>
> Some questions:
>
> 1. What advantages using pecl_http, or disadvantages from not using  
> it like I have pushed back to? Is it going to be a deal breaker  
> later so I need to work it out, or can I not worry about it?

curl is an equivalent alternative.

> 2. How can I debug it, will an xdebug session help?

No, because this is PHP internals.

-- 
Jan Schneider
The Horde Project
http://www.horde.org/
https://www.facebook.com/hordeproject



More information about the horde mailing list