Page MenuHomePhabricator

In MW 1.30, cannot delete pages created in 1.28.x (pages created under 1.29.1 can be deleted)
Closed, DeclinedPublic

Description

The DeletePagesForGood extension works perfectly on Mediawiki 1.28.0 but not work with 1.29.0 and 1.29.1

It's not really true. The extension works with 1.29.1 (tested) but does not work with content coming from 1.28.x

See the link for this extension : https://www.mediawiki.org/wiki/Extension_talk:DeletePagesForGood

Do not work for me anymore. Under shared server I can not use update.php I do not have shell console.

However, I updated the tables during the last update.

I updated the tables during the installation of version 1.29.1 but the extension DeletePagesForGood does not work.

On my debian server I tested update, without improvement.

On my local Debian server, however, I notice that, if indeed, I can not delete existing pages ...

I can create a new page, and destroy the new page created with the extension DeletePagesForGood.

I'm doing a deleteOldRevision.php to delete all the logs and save space in the database.

I test a "GOODBYE" page that refuses to be deleted with the extension DeletePagesForGood. I delete it normally. I recreate it. I can then delete it with the extension DeletePagesForGood. ( Delete / create / delete with DeletePagesForGood work for me. )

Event Timeline

Hi @Zer00CooL, thanks for taking the time to report this!

The DeletePagesForGood extension works perfectly on Mediawiki 1.28.0 but not work with 1.29.0 and 1.29.1
It's not really true.

Then why do you write it, if it is not true? :)

It's unclear to me what does "not work". Could you please follow https://mediawiki.org/wiki/How_to_report_a_bug and provide

  1. a section for: steps to reproduce, as a list, step by step
  2. a section for: expected outcome
  3. a section for: actual outcome

I add this comment : https://phabricator.wikimedia.org/T113883

Reproduce the bug - (proposal)
Install Mediawiki 1.28.0
Install DeleteForGood.
Create mediawiki pages.

Upgrade Mediawiki Version 1.29.0 or 1.29.1

Attempt to delete a page with DeleteForGood.

Normally, does not work.

Delete the page, recreate the page, delete the page completely with DeleteForGood.

Normally, works.

The new pages created under Mediawiki 1.29.1 seem to be able to be deleted, with the extension DeletePageForGood.
The old pages from 1.28.x seem not to be able to be deleted, with the extension DeletePageForGood.

Aklapper renamed this task from Save the extension DeletePagesForGood - Not work with mediawiki 1.29.0 / 1.29.1 to Cannot delete pages created in 1.28.x (pages created under 1.29.1 can be deleted).Dec 13 2017, 3:14 PM
Aklapper changed the task status from Open to Stalled.Feb 6 2018, 12:24 PM

It is unclear what the problem is here, how to delete, what exactly happens. Please see https://mediawiki.org/wiki/How_to_report_a_bug how to structure a task into three sections (Steps to reproduce; expected outcome; actual outcome). Thanks.

Install Mediawiki 1.28
Install DeletePageForGood
TOTALLY delete a page with DeletePageForGood. Work Good.

Upgrade Mediawiki.
TOTALLY delete a page with DeletePageForGood. Not work.
Not working now, an error message is displayed. Example :
-> [WnrZeVvYa54AAD3-4okAAABO] 2018-02-07 10:48:26: Erreur fatale de type « Wikimedia\Rdbms\DBUnexpectedError »

I manage to get around the problem as well:
Delete a page normally.
Recreate the same page.
TOTALLY delete the page with DeletePageForGood works.

Install Mediawiki 1.28

1.28 is an ancient unsupported version that we do not care about anymore. Hence closing this task as obsolete.

No, i say, with mediawiki 1.28, DeletePageForGood work nice.

With mediawiki 1.30 ... DeletePageForGood work not good.

Delete page with DeletePageForGood don't work.

Delete page / create page , then, use DeletePageForGood are working, but, it's not the best way.

Aklapper renamed this task from Cannot delete pages created in 1.28.x (pages created under 1.29.1 can be deleted) to In MW 1.30, cannot delete pages created in 1.28.x (pages created under 1.29.1 can be deleted).Feb 7 2018, 4:23 PM
Aklapper reopened this task as Open.

Hmm this works for me (i doint think i have done it by create a page in 1.28 and then upgrading to 1.30) at least it deletes pages in 1.31 (i am running master).

Strange. For me, it does not work directly for pages created since 1.28

In version 1.30, for the extension to work, I must proceed as follows:

Read the page
Delete page
Create the same page
Then
Delete with DeletePageForGood work nice.

But, i can not
Read the page
Delete with DeletePageForGood directly.

Paladox (talkcontribs) say :
You can run the update.php script through mw-config (web ui)
<wiki>/mw-config/
( https://www.mediawiki.org/wiki/Extension_talk:DeletePagesForGood )

Did you do the schema upgrades when going from 1.28 to 1.30?

that is required. this extension dosen't have any schema changes.

Also there was updates to the mw 1.30 branch maybe you would like to try them?

Also you could update to mw 1.31 which is in rc stage.

I did not specifically update the schema, but, I made the updates by filing a folder with a new version of Mediawiki, which recognizes then that a database exists, and, then asks me to update it.

I test your proposal again today :
You can run the update.php script through mw-config (web ui)

But, I do not think to upgrade to the higher version, if it is not stable, I prefer to avoid other technical complications.

Thank you for your interest in this extension, which I find very practical, and can meet the needs of many users.

With my repo local, i have make the update, but, i have the good version, i mean.
/opt/lampp/bin/php /opt/lampp/htdocs/wiki/maintenance/update.php

...
...fa_sha1 column of filearchive table already populated.
...*_from_namespace column of backlink tables already populated.
...Update 'FixDefaultJsonContentPages' already logged as completed.
...Update 'cleanup empty categories' already logged as completed.
...RFC and PMID already added to interwiki database table.
Populating page_props.pp_sortkey...
Updated 0 rows
Populating page_props.pp_sortkey complete.
Copying IP revisions to ip_changes, from rev_id 0 to rev_id 13477
Attempted to insert 0 IP revisions, 0 actually done.
Set the local repo temp zone container to be private.
Purging caches...done.

But when i test to delete directly with delete for good, i have this red alert :

[WxbolH8AAAEAAD0JWuwAAAAT] /wiki/index.php?title=Vision_du_web&action=delete_page_permanently Wikimedia\Rdbms\DBUnexpectedError from line 3462 of /opt/lampp/htdocs/wiki/includes/libs/rdbms/database/Database.php: Category::refreshCounts: Cannot flush pre-lock snapshot because writes are pending (ActionDeletePagePermanently::deletePermanently, ActionDeletePagePermanently::deletePermanently, ActionDeletePagePermanently::deletePermanently, ActionDeletePagePermanently::deletePermanently, ActionDeletePagePermanently::deletePermanently, ActionDeletePagePermanently::deletePermanently, ActionDeletePagePermanently::deletePermanently, ActionDeletePagePermanently::deletePermanently, ActionDeletePagePermanently::deletePermanently, ActionDeletePagePermanently::deletePermanently, ActionDeletePagePermanently::deletePermanently, ActionDeletePagePermanently::deletePermanently, ActionDeletePagePermanently::deletePermanently, ActionDeletePagePermanently::deletePermanently, ActionDeletePagePermanently::deletePermanently).

Backtrace:

#0 /opt/lampp/htdocs/wiki/includes/Category.php(331): Wikimedia\Rdbms\Database->getScopedLockAndFlush(string, string, integer)
#1 /opt/lampp/htdocs/wiki/extensions/DeletePagesForGood/ActionDeletePagePermanently.php(167): Category->refreshCounts()
#2 /opt/lampp/htdocs/wiki/extensions/DeletePagesForGood/ActionDeletePagePermanently.php(55): ActionDeletePagePermanently->deletePermanently(Title)
#3 /opt/lampp/htdocs/wiki/includes/htmlform/HTMLForm.php(669): ActionDeletePagePermanently->onSubmit(array, HTMLForm)
#4 /opt/lampp/htdocs/wiki/includes/htmlform/HTMLForm.php(561): HTMLForm->trySubmit()
#5 /opt/lampp/htdocs/wiki/includes/htmlform/HTMLForm.php(576): HTMLForm->tryAuthorizedSubmit()
#6 /opt/lampp/htdocs/wiki/includes/actions/FormAction.php(138): HTMLForm->show()
#7 /opt/lampp/htdocs/wiki/includes/MediaWiki.php(499): FormAction->show()
#8 /opt/lampp/htdocs/wiki/includes/MediaWiki.php(293): MediaWiki->performAction(Article, Title)
#9 /opt/lampp/htdocs/wiki/includes/MediaWiki.php(851): MediaWiki->performRequest()
#10 /opt/lampp/htdocs/wiki/includes/MediaWiki.php(523): MediaWiki->main()
#11 /opt/lampp/htdocs/wiki/index.php(43): MediaWiki->run()
#12 {main}

GTrang subscribed.

MW 1.30 and all earlier versions are now considered EOL (obsolete). Hence, I am declining this task.