Page MenuHomePhabricator

Error due to non existing database column in grabText.php
Closed, ResolvedPublicBUG REPORT

Description

Steps to replicate the issue (include links if applicable):

  • Set up a fresh mediawiki database with mediawiki 1.38.4 setup script
  • verify that table page_restrictions does not have column pr_user anymore (was dropped after 1.37, see https://www.mediawiki.org/wiki/Manual:Page_restrictions_table)
  • run php grabText.php on any test instance, you will see the following error after namespaces have been imported and when trying to import the first page:

What happens?:

Processing page id 1...
Title: Main_Page in namespace 0
Setting page_restrictions on page_id 1.
Wikimedia\Rdbms\DBQueryError from line 1606 of /etc/var/www/mediawiki-1.38.4/includes/libs/rdbms/database/Database.php: Error 1054: Unknown column 'pr_user' in 'field list' (127.0.0.1)
Function: GrabText::processPage
Query: INSERT INTO `page_restrictions` (pr_page,pr_type,pr_level,pr_cascade,pr_user,pr_expiry) VALUES (1,'edit','sysop',0,NULL,'infinity')

#0 /etc/var/www/mediawiki-1.38.4/includes/libs/rdbms/database/Database.php(1590): Wikimedia\Rdbms\Database->getQueryException()
#1 /etc/var/www/mediawiki-1.38.4/includes/libs/rdbms/database/Database.php(1564): Wikimedia\Rdbms\Database->getQueryExceptionAndLog()
#2 /etc/var/www/mediawiki-1.38.4/includes/libs/rdbms/database/Database.php(1173): Wikimedia\Rdbms\Database->reportQueryError()
#3 /etc/var/www/mediawiki-1.38.4/includes/libs/rdbms/database/Database.php(2352): Wikimedia\Rdbms\Database->query()
#4 /etc/var/www/mediawiki-1.38.4/includes/libs/rdbms/database/Database.php(2332): Wikimedia\Rdbms\Database->doInsert()
#5 /etc/var/www/mediawiki-1.38.4/includes/libs/rdbms/database/DBConnRef.php(69): Wikimedia\Rdbms\Database->insert()
#6 /etc/var/www/mediawiki-1.38.4/includes/libs/rdbms/database/DBConnRef.php(375): Wikimedia\Rdbms\DBConnRef->__call()
#7 /etc/var/www/mediawiki-1.38.4/mediawiki-tools-grabbers-master/grabText.php(296): Wikimedia\Rdbms\DBConnRef->insert()
#8 /etc/var/www/mediawiki-1.38.4/mediawiki-tools-grabbers-master/grabText.php(131): GrabText->processPage()
#9 /etc/var/www/mediawiki-1.38.4/mediawiki-tools-grabbers-master/grabText.php(94): GrabText->processPagesFromNamespace()
#10 /etc/var/www/mediawiki-1.38.4/maintenance/doMaintenance.php(114): GrabText->execute()
#11 /etc/var/www/mediawiki-1.38.4/mediawiki-tools-grabbers-master/grabText.php(370): require_once('/etc/var/ww...')
#12 {main}

What should have happened instead?:
The script should run through without any errors. In the wiki it says it has been tested with mediawiki 1.38, which can not be wholly true.

Software version (skip for WMF-hosted wikis like Wikipedia):
mediawiki 1.38.4
grabber-tools master branch commit id d56751d

Other information (browser name/version, screenshots, etc.):