https://bugzilla.wikimedia.org/show_bug.cgi?id=26223

Platonides <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[email protected]

--- Comment #3 from Platonides <[email protected]> 2011-03-20 01:11:26 UTC 
---
There's no check in Title::moveToInternal() that Article::insertOn() really
suceeded, so if that failed, the new revision would be created linking to a
page with $newid = false, which would be converted to 0. Article::insertOn()
fails if there's already a page with that title, we just renamed the page, so
there should be no title with that page, and there's no trace of anyone
recreating it behind us.

It is interesting that the page was first misrenamed, but I don't see any trace
of what it did after moving to [[Wikipedia:Tutorial/Editing)/sandbox]]

This move was:
[[Wikipedia:Tutorial
(Editing)/sandbox]]->[[Wikipedia:Tutorial/Editing)/sandbox]]
[[Wikipedia:Tutorial
(Editing)/sandbox]]->[[Wikipedia:Tutorial/Editing/sandbox]]

How is this possible? Consider this: Fuhghettaboutit clicked to move the page,
but noticed the typo immediatly, stopped the load, fixed the ')' and
resubmitted. As Special:Movepage doesn't create a transaction, at that point
*both requests were running at the same time* on the master. The second request
fetched the old Article values, so moved the real article, not the redirect
(maybe also because Title::moveto() does not call getArticleID() with
GAID_FOR_UPDATE). But at the time of creating the redirect to the new entry,
the first request had already created that. The insert ignore fails, but the
revision is nonetheless inserted, leaking that entry.

I have been able to reproduce it locally.

touch lock
(while [ -f lock ]; do :; done; wget /index.php/Special:MovePage/Bug-26223
--post-data="action=submit&wpOldTitle=Bug-26223A&wpNewTitle=Bug-26223_$RANDOM&wpMove=yes&wpEditToken=%2B\\"
)&
(while [ -f lock ]; do :; done; wget /index.php/Special:MovePage/Bug-26223
--post-data="action=submit&wpOldTitle=Bug-26223A&wpNewTitle=Bug-26223_$RANDOM&wpMove=yes&wpEditToken=%2B\\"
)&
rm lock

-- 
Configure bugmail: https://bugzilla.wikimedia.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
You are on the CC list for the bug.

_______________________________________________
Wikibugs-l mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/wikibugs-l

Reply via email to