Topic on Project:Support desk

Unable to edit Interwiki due to error" relation "ignore" does not exist

3
162.93.65.8 (talkcontribs)

MediaWiki 1.23.15, PostgresSQL 9.5.4, Interwiki 2.3 20140327

Attempting to edit existing Interwiki data to update change in URL, but always fails. Error logs show: relation "ignore" does not exist. Example: "UPDATE /* SpecialInterwiki::doSubmit first.last */ IGNORE "interwiki" SET"...etc...

Googling suggests Postgresql does not support the IGNORE that MySQL has. Apparently the MediaWiki core DatabasePostgres.php does not account for this. Found someone's attempt at an update to the core file, but very wary of it from a compatibility standpoint (no version information specified). Is there a patch or other way (aside from updating DB manually) to get Interwiki to work with the table in Postgresql?

Previous help from my posting in the wrong support area pointed to  task T130634 which unfortunately does not seem to be working when / how I implemented it. With the patch I now have a completely broken wiki with log errors, "PHP Fatal error:  Class 'Database' not found in ...mediawiki-1.23.15/includes/db/DatabasePostgres.php on line 207"

Did I apply the "patch" incorrectly (aka replace existing DatabasePostgres.php) or is it incompatible with my release(s)? I saw no guidance on applying the patch nor any reference to MediaWiki/Interwiki versions it was compatible with. Any help would be appreciated! Thank you.

Malyacko (talkcontribs)

On an unrelated note, 1.23 is an unsupported old version which does not receive security updates anymore. Please upgrade.

Ciencia Al Poder (talkcontribs)

The "patch" shouldn't be applied by replacing the entire file, but by replacing only the modified lines, because the "original" file used to make those changes is probably from a different MediaWiki version than yours, and incompatible. This one should be particularly easy to implement, as it just adds a new function.