Page MenuHomePhabricator

Database errors during MovePage operations for file moves causes data loss.
Closed, ResolvedPublic

Description

If MovePage::move() has an exception during a database operation it fails to move the file back to the original location. Since the database operations are wrapped in a transaction the file move can be moved down to trigger the transaction to rollback if the file fails to move.

See also: T153565

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald Transcript

Change 478237 had a related patch set uploaded (by Alexia; owner: Alexia):
[mediawiki/core@master] Cancel the transaction if the file fails to move. This prevents losing files when there is a database error.

https://gerrit.wikimedia.org/r/478237

Change 478237 merged by jenkins-bot:
[mediawiki/core@master] Cancel the transaction if the file fails to move. This prevents losing files when there is a database error.

https://gerrit.wikimedia.org/r/478237

Change 478749 had a related patch set uploaded (by Alexia; owner: Alexia):
[mediawiki/core@master] Can't call escaped() on a string.

https://gerrit.wikimedia.org/r/478749

I goofed and submitted a buggy patch. See the new patch set.

Change 478749 merged by jenkins-bot:
[mediawiki/core@master] Can't call escaped() on a string.

https://gerrit.wikimedia.org/r/478749

@Alexia: All patches merged, is there more to do here or can this task be resolved?