Page MenuHomePhabricator

PHP Fatal error: Class 'FormatJson' not found in HashBagOStuff.php on line 87
Closed, ResolvedPublic


12:10:32 PHP Fatal error:  Class 'FormatJson' not found in /mnt/jenkins-workspace/workspace/mwext-Wikibase-repo-tests/includes/objectcache/HashBagOStuff.php on line 87
12:10:32 PHP Stack trace:
12:10:32 PHP   1. {main}() /mnt/jenkins-workspace/workspace/mwext-Wikibase-repo-tests/maintenance/update.php:0
12:10:32 PHP   2. require_once() /mnt/jenkins-workspace/workspace/mwext-Wikibase-repo-tests/maintenance/update.php:221
12:10:32 PHP   3. UpdateMediaWiki->execute() /mnt/jenkins-workspace/workspace/mwext-Wikibase-repo-tests/maintenance/doMaintenance.php:101
12:10:32 PHP   4. DatabaseUpdater->doUpdates() /mnt/jenkins-workspace/workspace/mwext-Wikibase-repo-tests/maintenance/update.php:177
12:10:32 PHP   5. DatabaseUpdater->runUpdates() /mnt/jenkins-workspace/workspace/mwext-Wikibase-repo-tests/includes/installer/DatabaseUpdater.php:408
12:10:32 PHP   6. call_user_func_array() /mnt/jenkins-workspace/workspace/mwext-Wikibase-repo-tests/includes/installer/DatabaseUpdater.php:443
12:10:32 PHP   7. Wikibase\SqlStore::rebuildPropertyInfo() /mnt/jenkins-workspace/workspace/mwext-Wikibase-repo-tests/includes/installer/DatabaseUpdater.php:0
12:10:32 PHP   8. AutoLoader::autoload() /mnt/jenkins-workspace/workspace/mwext-Wikibase-repo-tests/includes/AutoLoader.php:0
12:10:32 PHP   9. MWExceptionHandler::handleError() /mnt/jenkins-workspace/workspace/mwext-Wikibase-repo-tests/includes/exception/MWExceptionHandler.php:0
12:10:32 PHP  10. MWExceptionHandler::logError() /mnt/jenkins-workspace/workspace/mwext-Wikibase-repo-tests/includes/exception/MWExceptionHandler.php:217

Event Timeline

aude raised the priority of this task from to Needs Triage.
aude updated the task description. (Show Details)
aude added a project: MediaWiki-General.
aude subscribed.

my guess is perhaps problem with apc cache on the jenkins instances or using a cached version of core.

if someone could poke at the instances, maybe that would help?

same error happened on travis with sqlite + php5.3:

though that combination passed for me here: (while strange, different failure for sqlite + hhvm)

seems that jenkins and travis are now approving again, since was merged into core.

just a guess that php 5.3 + sqlite (+ maybe apc, with strict) had an issue with that bug and now it is fixed.

aude set Security to None.

appears to be fixed now.

I just encountered this error during an upgrade from 1.26.4 to 1.28.0:

$ php update.php --quick
Warning: require_once(includes/json/FormatJson.php): failed to open stream: No such file or directory in <path>/w/maintenance/update.php on line 29

A quick workaround was to paste this line into maintenance/update.php:

require_once '../includes/json/FormatJson.php';

and then rerun update.php.

For the record:

$ php --version
PHP 5.5.35 (cli) (built: May 25 2016 14:25:43) 
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies
    with the ionCube PHP Loader v4.7.5, Copyright (c) 2002-2014, by ionCube Ltd., and
    with Zend Guard Loader v3.3, Copyright (c) 1998-2014, by Zend Technologies
    with Suhosin v0.9.38, Copyright (c) 2007-2015, by SektionEins GmbH

Just ran into this after upgrading to php 7.3 on mw127 on centos.

(Oops, maybe not. The error is about FormatJson, but the source seems to be something else. It seems to be related to trying to run mw127 on php 7.3.)