Page MenuHomePhabricator

Create maintenance script to delete orphaned content
Open, MediumPublic

Description

Content can become orphaned, with no slot pointing to it. For example, the DeletePagesForGood extension can cause this. Create a maintenance script to detect and delete orphaned content.

The idea is that if no slot references a given row in the content table, that row and the associated blob in the blob store can be deleted. This is based on the assumption that, while the same content row may be referenced by different revisions (possibly even of different pages), the same blob is never referenced by multiple content rows. There is however no mechanism in place to enforce this assumption.

This task was created due to a need noticed while implementing T198341, patch https://gerrit.wikimedia.org/r/#/c/mediawiki/extensions/DeletePagesForGood/+/506573/