Page MenuHomePhabricator

Wikimedia\Assert\PreconditionException: Precondition failed: This Title instance does not represent an existing page: Property Simplify
Closed, ResolvedPublicPRODUCTION ERROR

Description

Error
labels.normalized_message
[{reqId}] {exception_url}   Wikimedia\Assert\PreconditionException: Precondition failed: This Title instance does not represent an existing page: Property Simplify
error.stack_trace
from /srv/mediawiki/php-1.41.0-wmf.15/vendor/wikimedia/assert/src/Assert.php(49)
#0 /srv/mediawiki/php-1.41.0-wmf.15/includes/title/Title.php(4139): Wikimedia\Assert\Assert::precondition(boolean, string)
#1 /srv/mediawiki/php-1.41.0-wmf.15/extensions/VisualEditor/includes/ApiVisualEditorEdit.php(518): MediaWiki\Title\Title->toPageRecord(integer)
#2 /srv/mediawiki/php-1.41.0-wmf.15/includes/api/ApiMain.php(1914): MediaWiki\Extension\VisualEditor\ApiVisualEditorEdit->execute()
#3 /srv/mediawiki/php-1.41.0-wmf.15/includes/api/ApiMain.php(891): ApiMain->executeAction()
#4 /srv/mediawiki/php-1.41.0-wmf.15/includes/api/ApiMain.php(862): ApiMain->executeActionWithErrorHandling()
#5 /srv/mediawiki/php-1.41.0-wmf.15/api.php(95): ApiMain->execute()
#6 /srv/mediawiki/php-1.41.0-wmf.15/api.php(48): wfApiMain()
#7 /srv/mediawiki/w/api.php(3): require(string)
#8 {main}
Impact
Notes

Noted 5 of these after deploy of T340243: 1.41.0-wmf.15 deployment blockers to group0.

Event Timeline

Change 933613 had a related patch set uploaded (by Bartosz Dziewoński; author: Bartosz Dziewoński):

[mediawiki/core@master] Title: Fix exists() assertion in toPageRecord()

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

I haven't been able to reproduce this, but I believe this error would result in an error message upon saving when creating a new page using VisualEditor. (The page would still be saved, but the editor would be stuck believing that it wasn't.)

Change 933626 had a related patch set uploaded (by Bartosz Dziewoński; author: Bartosz Dziewoński):

[mediawiki/core@wmf/1.41.0-wmf.15] Title: Fix exists() assertion in toPageRecord()

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

Change 933613 merged by jenkins-bot:

[mediawiki/core@master] Title: Fix exists() assertion in toPageRecord()

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

Change 933626 merged by jenkins-bot:

[mediawiki/core@wmf/1.41.0-wmf.15] Title: Fix exists() assertion in toPageRecord()

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

Mentioned in SAL (#wikimedia-operations) [2023-06-27T20:41:56Z] <samtar@deploy1002> Started scap: Backport for [[gerrit:933626|Title: Fix exists() assertion in toPageRecord() (T340568)]]

Mentioned in SAL (#wikimedia-operations) [2023-06-27T20:43:29Z] <samtar@deploy1002> matmarex and samtar: Backport for [[gerrit:933626|Title: Fix exists() assertion in toPageRecord() (T340568)]] synced to the testservers: mwdebug1001.eqiad.wmnet, mwdebug2002.codfw.wmnet, mwdebug2001.codfw.wmnet, mwdebug1002.eqiad.wmnet

Mentioned in SAL (#wikimedia-operations) [2023-06-27T20:48:48Z] <samtar@deploy1002> Finished scap: Backport for [[gerrit:933626|Title: Fix exists() assertion in toPageRecord() (T340568)]] (duration: 06m 52s)

matmarex claimed this task.

Still seeing a handful of these in wmf.15.

I haven't been able to reproduce this, but I believe this error would result in an error message upon saving when creating a new page using VisualEditor. (The page would still be saved, but the editor would be stuck believing that it wasn't.)

I think calling this API with blocked IP can reproduce the issue, the save attempt would fail and no page created.

Yes, I missed that we also run this code when saving the edit fails, in which case the page may indeed not exist. My bad, I'll propose another patch.

Change 933992 had a related patch set uploaded (by Bartosz Dziewoński; author: Bartosz Dziewoński):

[mediawiki/extensions/VisualEditor@master] Fix trying to get a PageRecord for a non-existent page

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

Change 933992 merged by jenkins-bot:

[mediawiki/extensions/VisualEditor@master] Fix trying to get a PageRecord for a non-existent page

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

Change 934023 had a related patch set uploaded (by Reedy; author: Bartosz Dziewoński):

[mediawiki/extensions/VisualEditor@wmf/1.41.0-wmf.15] Fix trying to get a PageRecord for a non-existent page

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

Change 934023 merged by jenkins-bot:

[mediawiki/extensions/VisualEditor@wmf/1.41.0-wmf.15] Fix trying to get a PageRecord for a non-existent page

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

Mentioned in SAL (#wikimedia-operations) [2023-06-29T13:49:27Z] <taavi@deploy1002> Started scap: Backport for [[gerrit:934023|Fix trying to get a PageRecord for a non-existent page (T340568)]], [[gerrit:934024|Revert "Remove $wgNamespacesWithSubpages overrides on the MediaWiki namespace"]]

Mentioned in SAL (#wikimedia-operations) [2023-06-29T13:50:58Z] <taavi@deploy1002> taavi and reedy: Backport for [[gerrit:934023|Fix trying to get a PageRecord for a non-existent page (T340568)]], [[gerrit:934024|Revert "Remove $wgNamespacesWithSubpages overrides on the MediaWiki namespace"]] synced to the testservers: mwdebug1001.eqiad.wmnet, mwdebug1002.eqiad.wmnet, mwdebug2001.codfw.wmnet, mwdebug2002.codfw.wmnet

Mentioned in SAL (#wikimedia-operations) [2023-06-29T14:01:29Z] <taavi@deploy1002> Finished scap: Backport for [[gerrit:934023|Fix trying to get a PageRecord for a non-existent page (T340568)]], [[gerrit:934024|Revert "Remove $wgNamespacesWithSubpages overrides on the MediaWiki namespace"]] (duration: 12m 01s)