Topic on Project:Support desk

PROCEDURE c1_db_mediawiki.refresh_all_parents_for_page does not exist

7
Summary by Leaderboard

issue resolved

62.84.213.98 (talkcontribs)

Since yesterday Mediawiki suddenly stops to work. No one did an Update or something. On Page Save with VisualEditor it gives the Error in Subject.

This is the SQL Statement:

INSERT IGNORE INTO `page` (page_namespace,page_title,page_restrictions,page_is_redirect,page_is_new,page_random,page_touched,page_latest,page_len) VALUES ('0','Test_ergergegegegergegegege','','0','1','0.620618256636','20180925131212','0','0')

Malyacko (talkcontribs)
Seb35 (talkcontribs)

Perhaps a full disk or database?

62.84.213.98 (talkcontribs)

The version is 1.31.1


Another related error is when i want to delete a Page, it gives Error: 1305 PROCEDURE c1_db_mediawiki.refresh_parent_pages_for_parent_children does not exist


Why are there missing Procedures and where are they coming from? Can't find them in the Source Code, just tried to update via /mw-config/ but it says that everything is up-to-date.

77.245.46.62 (talkcontribs)

I am in the process of moving the wiki to a new server and have the same problem when creating a new article (on new server).

QUERY:

INSERT IGNORE INTO `page`   (page_id,page_namespace,page_title,page_restrictions,page_is_redirect,page_is_new,page_random,page_touched,page_late st,page_len) VALUES (NULL,'0','Hallo',</nowiki>,'0','1','0.849581375899','20190205083213','0','0')

ERROR:

1305 PROCEDURE mywiki.refresh_all_parents_for_page does not exist (localhost)

BACKTRACE:

#0 /var/www/html/mediawiki/includes/db/Database.php(1205): DatabaseBase->reportQueryError('PROCEDURE mywiki...', 1305, 'INSERT IGNORE I...', 'WikiPage::inser...', false)
#1 /var/www/html/mediawiki/includes/db/Database.php(2087): DatabaseBase->query('INSERT IGNORE I...', 'WikiPage::inser...')
#2 /var/www/html/mediawiki/includes/page/WikiPage.php(1219): DatabaseBase->insert('`page`', Array, 'WikiPage::inser...', 'IGNORE')
#3 /var/www/html/mediawiki/includes/page/WikiPage.php(1898): WikiPage->insertOn(Object(DatabaseMysqli))
#4 /var/www/html/mediawiki/includes/page/Article.php(2016): WikiPage->doEditContent(Object(WikitextContent), 'Die Seite wurde...', 97, false, Object(User), 'text/x-wiki')
#5 /var/www/html/mediawiki/includes/EditPage.php(1920): Article->__call('doEditContent', Array)
#6 /var/www/html/mediawiki/includes/EditPage.php(1305): EditPage->internalAttemptSave(Array, false)
#7 /var/www/html/mediawiki/includes/EditPage.php(539): EditPage->attemptSave(Array)
#8 /var/www/html/mediawiki/includes/actions/EditAction.php(56): EditPage->edit()
#9 /var/www/html/mediawiki/includes/actions/SubmitAction.php(40): EditAction->show()
#10 /var/www/html/mediawiki/includes/MediaWiki.php(395): SubmitAction->show()
#11 /var/www/html/mediawiki/includes/MediaWiki.php(273): MediaWiki->performAction(Object(Article), Object(Title))
#12 /var/www/html/mediawiki/includes/MediaWiki.php(566): MediaWiki->performRequest()
#13 /var/www/html/mediawiki/includes/MediaWiki.php(414): MediaWiki->main()
#14 /var/www/html/mediawiki/index.php(41): MediaWiki->run()
#15 {main}
Ciencia Al Poder (talkcontribs)

The procedure "refresh_all_parents_for_page" is not provided by MediaWiki core (MediaWiki core doesn't use procedures), but it's created by MediaWiki4Intranet/IntraACL extension:

https://github.com/mediawiki4intranet/IntraACL/blob/master/storage/intraacl-functions-mysql.sql#L112

One thing is clear: someone did change something in the database. Things don't suddenly break when people doesn't touch anything.

This extension creates the procedure, and also adds a trigger on the page table that calls to the procedure. However, looks like the procedure has been dropped, or the user has been denied the permission to execute procedures. If you want to uninstall the extension, read the instructions carefully. Otherwise, ask your host administrator about possible permission issues.

62.84.213.98 (talkcontribs)

Thank you, that was the reason. I removed the one line from the Trigger where it states "efresh_all_parents_for_page

"