Page MenuHomePhabricator

het-deploy relies on dba_* functions existing
Closed, ResolvedPublic

Description

Right now het deploy relies on dba_* functions existing so we can read wikiversions.cdb. This shouldn't be completely necessary since we've got CdbReader_PHP in core.

This makes it impossible to run maintenance scripts under hhvm currently. While hhvm should support the functionality, it would be nice to use our own fallbacks here.


Version: wmf-deployment
Severity: normal

Details

Reference
bz56591

Event Timeline

bzimport raised the priority of this task from to Medium.Nov 22 2014, 2:38 AM
bzimport set Reference to bz56591.
bzimport added a subscriber: Unknown Object (MLST).

The code as is sorta suggests (or reads like, at least) we shouldn't be using the php version...

public static function open( $fileName ) {

		if ( self::haveExtension() ) {
			return new CdbReader_DBA( $fileName );
		} else {
			wfDebug( "Warning: no dba extension found, using emulation.\n" );
			return new CdbReader_PHP( $fileName );
		}

}

Cdb_PHP.php looks standalone enough, so we can presumably reuse that (without having to initialize mediawiki to read a cdb, which would lead to some nice recursion - what version of mediawiki should we load?)...

Is it worth us copying this into multiversion? Or just use require/include ../php/includes/Cdb.php and ../php/includes/Cdb_PHP.php

Change 93622 had a related patch set uploaded by Chad:
Fix up multiversion to not require dba_* functions

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

Change 93622 merged by jenkins-bot:
Fix up multiversion to not require dba_* functions

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

Assuming this bug is FIXED as per comment 3. If that is not the case: Please reopen and elaborate what is left to do here to get this report fixed.