It's a known issue, but unfortunately there isn't a patch out yet. Although
you can work around the issue by removing the for update from the query.
On Nov 23, 2013 5:40 AM, "Laurent Wandrebeck"
<l.wandrebeck(a)quelquesmots.fr>
wrote:
Hi there,
CentOS 6.4 x86_64, php 5.3.3, PostgreSQL 9.3.1, mediawiki 1.21.3.
When trying to delete a file that was previously imported, I get:
(translated from french, original message below)
A query syntax error in the database happened. That can be a bug in
software. The last query executed by the database was:
(SQL query hidden)
from function « Revision::fetchFromConds ». The database send back error «
« 0A000 : ERROR: FOR UPDATE can't be applied on the possibly NULL side of
an extern join ».
That is in french:
Une erreur de syntaxe de la requête dans la base de données est survenue.
Ceci peut indiquer un bogue dans le logiciel. La dernière requête traitée
par la base de données était :
(Requête SQL cachée)
depuis la fonction « Revision::fetchFromConds ». La base de données a
renvoyé l'erreur « 0A000 : ERREUR: FOR UPDATE ne peut être appliqué sur le
côté possiblement NULL d'une jointure externe ».
PostgreSQL log gives:
SELECT /* Revision::fetchFromConds Low */ rev_id,rev_page,rev_text_id,
rev_timestamp,rev_comment,rev_user_text,rev_user,rev_minor_
edit,rev_deleted,rev_len,rev_parent_id,rev_sha1,rev_
content_format,rev_content_model,page_namespace,page_
title,page_id,page_latest,page_is_redirect,page_len,user_name FROM
"revision" INNER JOIN "page" ON ((page_id = rev_page)) LEFT JOIN
"mwuser"
ON ((rev_user != 0) AND (user_id = rev_user)) WHERE page_id = '722' AND
rev_id = '4584' LIMIT 1 FOR UPDATE
I'll be glad to try some patch.
Keep up the good work,
Laurent.
_______________________________________________
MediaWiki-l mailing list
MediaWiki-l(a)lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-l