Page MenuHomePhabricator

hhvm on CI slaves can not find PEAR.php
Closed, ResolvedPublic

Description

When running CirrusSearch unit tests under HHVM, the build fails with:

Fatal error: File not found: PEAR.php in mwext-CirrusSearch-testextension-hhvm/src/extensions/TimedMediaHandler/handlers/OggHandler/PEAR/File_Ogg/File/Ogg.php on line 123

Jenkins job: https://integration.wikimedia.org/ci/job/mwext-CirrusSearch-testextension-hhvm/

We do have the Debian package php-pear installed which install the files under /usr/share/php/. HHVM does not have that directory in its include path whereas the Zend version does:

$ fgrep -R /usr/share /etc/php5
/etc/php5/cli/php.ini:;include_path = ".:/usr/share/php"
/etc/php5/apache2/php.ini:;include_path = ".:/usr/share/php"

Event Timeline

hashar created this task.Dec 15 2014, 5:22 PM
hashar updated the task description. (Show Details)
hashar raised the priority of this task from to High.
hashar changed Security from none to None.
hashar updated the task description. (Show Details)
hashar added subscribers: scfc, greg, ori and 5 others.

/etc/hhvm/php.ini needs to be amended:

- hhvm.include_path = .:/usr/share/php
+ include_path = ".:/usr/share/php"

The double quotes around matter :-(

hashar claimed this task.Dec 15 2014, 7:29 PM

Change 179974 had a related patch set uploaded (by Hashar):
hhvm: fix include_path

https://gerrit.wikimedia.org/r/179974

Patch-For-Review

hashar edited projects, added acl*sre-team; removed CirrusSearch.Dec 15 2014, 7:38 PM

Cherry picked on contint puppetmaster and it fixed the build of TimedMediaHandler under HHVM https://integration.wikimedia.org/ci/job/mwext-TimedMediaHandler-testextension-hhvm/

This task is now pending ops review / merge.

The usage for both CirrusSearch and TimedMediaHandler stems from OggHandler:

OggHandler/PEAR/File_Ogg/File/Ogg.php:

require_once('PEAR.php');
require_once('PEAR/Exception.php');

Change 179974 merged by Ori.livneh:
hhvm: fix include_path

https://gerrit.wikimedia.org/r/179974

ori mentioned this in Unknown Object (Diffusion Commit).Dec 16 2014, 2:32 AM