Last modified: 2014-11-17 10:35:11 UTC

Wikimedia Bugzilla is closed!

Wikimedia migrated from Bugzilla to Phabricator. Bug reports are handled in Wikimedia Phabricator.
This static website is read-only and for historical purposes. It is not possible to log in and except for displaying bug reports and their history, links might be broken. See T2323, the corresponding Phabricator task for complete and up-to-date bug report information.
Bug 323 - edits where the rev_user_text and ar_user_text fields contain underscores, initial lower-case letters or consecutive spaces, which could occur in the Phase I and II software, are inaccessible using Special:Contributions
edits where the rev_user_text and ar_user_text fields contain underscores, in...
Status: NEW
Product: Wikimedia
Classification: Unclassified
General/Unknown (Other open bugs)
All All
: Low normal with 6 votes (vote)
: ---
Assigned To: Nobody - You can work on this!
: shell
Depends on: 3507
Blocks: 3985 16660 29757
  Show dependency treegraph
Reported: 2004-09-03 03:21 UTC by Timwi
Modified: 2014-11-17 10:35 UTC (History)
15 users (show)

See Also:
Web browser: ---
Mobile Platform: ---
Assignee Huggle Beta Tester: ---

Red link to existing lower case user and user talk pages (129.35 KB, image/png)
2010-08-17 17:08 UTC, Nemo

Description Timwi 2004-09-03 03:21:12 UTC
Originally submitted by Toby Bartels (tobybartels)  2004-03-16 03:04

On the English Wikipedia in 2001, there was a user
"Ryan_Lackey" whose user name contained an underscore.
You can see edits credited to this user at, for
example, [[Talk:Sealand]]. But these edits are not
recorded at
 which, after all, ''should'' be for a user named "Ryan
Lackey" (who doesn't exist).  Similarly,
[[User:Ryan_Lackey]] doesn't think that it's a user
page for an actual user.

This specific case can probably be fixed if a developer
performs a username change (from "Ryan_Lackey" to "Ryan
Lackey") -- assuming that the name changing feature
doesn't break down too! ^_^ But the larger bug probably
applies to other editors from Phase I.
Comment 1 Rob Church 2005-11-20 17:20:42 UTC
Not a bug...underscores are seen as spaces, and so aren't supported in
usernames. Running the username change *might* do it, but it might break their
contribs, too, depending upon how they're linked. Depends.
Comment 2 Toby Bartels 2005-11-21 21:13:37 UTC
It's not a bug in the current MediaWiki software, since that software doesn't
allow underscores in usernames.  Instead, it's a bug in the English Wikipedia
website, and possibly other websites that used Phase I.  (It may also be a bug
in the Phase I software or in the Phase I -> II conversion script, but I don't
think that they matter anymore.)  I've fixed the Product field to indicate this.
Comment 4 Chad H. 2008-01-25 05:39:56 UTC
(In reply to comment #1)
> Not a bug...underscores are seen as spaces, and so aren't supported in
> usernames. Running the username change *might* do it, but it might break their
> contribs, too, depending upon how they're linked. Depends.

Yes, it would. I tried manually switching a user name to have _ instead of a space, and it broke (same issue had come up with one of my users, wanted the underscore).

Too many places where _ is getting stripped or un-stripped possibly.
Comment 5 Aryeh Gregor (not reading bugmail, please e-mail directly) 2008-12-21 19:17:13 UTC
These still haven't been cleaned up . . . for instance, user_id 87496 is Nicholas_Lativy.  [[User:Nicholas Lativy]] is a different user, 90574.  These should be identified and dealt with, although they're probably long abandoned.
Comment 6 Mike.lifeguard 2009-03-19 15:39:12 UTC
Removed shell keyword as it seems there's nothing to do on shell presently.
Comment 7 Graham87 2009-03-31 01:13:32 UTC
The most famous victim of this bug would have to be Larry Sanger. See this diff (and note the username of "Larry_Sanger"): 

However, there are no contributions for Larry Sanger from the talk namespace in April 2001:

This bug affects the Nostalgia Wikipedia in exactly the same way.
Comment 8 Graham87 2009-03-31 01:45:39 UTC
I've just created the account under the user name "Ryan Lackey" to  keep the userpage from being deleted by automated scripts who think it's a userpage of an unregistered user. This will also stop malcontents from trying to use the account.
Comment 9 Happy-melon 2009-07-24 10:27:38 UTC
So what actually needs to be done here? What needs to be "cleaned up", and where?
Comment 10 Toby Bartels 2009-07-24 16:35:50 UTC
What needs to be done?  My estimate:
*  Identify all of the wikis that ever used Phase I software.
*  Identify all of the characters forbidden in current MediaWiki usernames but allowed in Phase I.
*  Identify all of the users registered at those wikis with at least one of those characters in each name.
*  Find an appropriate alternative name (which probably needs to be done ad hoc; we know that [[User:Larry_Sanger]] was the same as [[User:Larry Sanger]], and we know that [[User:Ryan Lackey]] is a dummy account, but we don't know what's up with [[User:Nicholas_Lativy]] and it may be too late to ask).
*  Move the invalidly named account --possibly by hand-editing the database-- to the validly named account.

This is a lot of work for little reward, so maybe we just need to keep this bug open (or is WONTFIX for this sort of thing?) so that people know about the possibility.  And try not to let anything else interact badly with it.
Comment 11 Graham87 2009-07-24 16:49:52 UTC
In the revision table, all underlines in the rev_user_text field need to be changed to spaces. Ditto for the ar_user_text field in the archive table. I think those changes will completely solve the problem, but I'm not 100% sure ... I'm not an expert on the database schema. It would be nice if the user IDs in the revision table were changed as well (so the user ID of Larry_Sanger would be the same as the user ID of Larry Sanger).
Comment 12 Graham87 2009-07-24 16:55:55 UTC
I comment-conflicted with Toby there. :-) As he said, other special characters caused problems when used in phase I usernames as well. The only one I can think of is "@", which is replaced with ".", as in this edit: That problem would be harder to fix though.
Comment 13 Graham87 2009-07-24 17:02:15 UTC
Re-added hsell keyword as fixing this bug requires direct manipulation of the database.
Comment 14 Graham87 2009-10-21 01:56:26 UTC
I just found a case of this bug where the user had an underline in their name but the account was subsequently taken over by a vandal. I thought I had created accounts for all UseModWiki-era users who didn't have them, but users have occasionally slipped through the cracks. See:

I have also known for a long time about the case of "Simon_J_Kissane", see:

Comment 15 Phillip Patriakeas 2009-11-28 23:42:54 UTC
Are we supposed to list all cases we find (as in [[bugzilla:20757]])? Because I just ran across [[User:Alan_D]]: for example does not show up in his contributions.
Comment 16 Toby Bartels 2009-11-29 00:45:11 UTC
@ Philip #15

I don't know who decides what we're "supposed" to do, but I think that it would be a good idea, at least until a developer writes in to say that there's no point.
Comment 17 Graham87 2009-11-29 03:29:10 UTC
There's no point in listing them as far as I can tell. The devs can find them all automatically if they use the method I outlined in comment 11. I don't see the point of listing all instances at bug 20757 either, but it's better to be safe than sorry.

As an aside, to draw more attention to this bug, I've mentioned it at
Comment 18 Aryeh Gregor (not reading bugmail, please e-mail directly) 2009-11-29 15:47:16 UTC
There is no point in listing them one by one here.  Anyone with even toolserver access can just query the appropriate tables to find the bad rows.  E.g., on enwiki,

mysql> SELECT user_name FROM user WHERE user_name LIKE '%\_%';
| user_name       |
| Nicholas_Lativy | 
1 row in set (1 min 13.18 sec)

The same can just as easily be done for the other wikis, and other tables.
Comment 19 Graham87 2009-12-13 13:57:56 UTC
Curiously, the import feature seems to convert underlines to spaces in usernames automatically. I just imported some history from Nostalgia Wikipedia to the English Wikipedia, thanks to bug 20280. Larry Sanger's early contribution list, especially before January 2002, is now quite interesting:
Comment 20 Phillip Patriakeas 2009-12-14 00:58:42 UTC
Not really relevant to this bug, but importing such edits also causes diff sizes to be generated for them.
Comment 21 Graham87 2009-12-28 08:53:43 UTC
Re: Comment 12, the problem is not the at being changed to a dot, but the fact that the first letter of the username contains a lower-case letter. I've changed the bug name accordingly to take this into account.

Therefore I would consider this bug resolved if someone changed underlines to spaces in the username fields as described in comment 11, then used the same procedure to change initial lower-case letters in usernames to capital letters. The change in the user ID number would be nice, but not strictly necessary, and it would probably be more trouble than it's worth.
Comment 22 Graham87 2009-12-28 09:02:45 UTC
And it goes without saying that I'd like this bug fixed on all applicable wikis, not just the English Wikipedia. I'm particularly thinking about the Nostalgia Wikipedia here, but other WMF projects might be affected as well.
Comment 23 Phillip Patriakeas 2009-12-29 01:42:31 UTC
What WMF projects besides the en.wp were active back on the Phase I software, anyways?
Comment 24 Graham87 2009-12-29 03:50:28 UTC
(In reply to comment #23)
> What WMF projects besides the en.wp were active back on the Phase I software,
> anyways?

Plenty of them. Compare and ... that's only the Wikipedias.

It occurs to me that it might be easier to fix this bug by changing the Special:Contributions and deleted contributions pages to check for table rows with underlines and initial lower-case letters in the usernames.
Comment 25 Graham87 2009-12-29 03:53:47 UTC
Another relevant page to the previous comment is:
Comment 26 Graham87 2009-12-29 12:14:50 UTC
This bug also affects some usernames from the Phase II software (which was used in the English Wikipedia from January to July 2002), so I've changed the bug title accordingly. See this edit to "military history":
Comment 27 Graham87 2009-12-29 16:10:26 UTC
(In reply to comment #24)
> It occurs to me that it might be easier to fix this bug by changing the
> Special:Contributions and deleted contributions pages to check for table rows
> with underlines and initial lower-case letters in the usernames.

And it now occurs to me that fixing the problem by changing the contributions special pages, rather than changing the entries in the database, wouldn't fix the problem with importing edits in comment 19. See this page in my userspace:
Therefore my idea in comment 25 would be a second-rate solution.
Comment 28 Graham87 2010-01-10 03:33:24 UTC
Here's an example of this bug in a non-English Wikipedia:
Comment 29 Graham87 2010-03-18 05:21:12 UTC
In the revision table of the Nostalgia Wikipedia, one of the usernames listed is "Brad_", so it was apparently possible for usernames to end in underlines in the phase I and II software.
In these cases, these usernames should probably be changed to "Brad old" or something similar. Replacing the underlines with spaces in this case would produce the username "Brad ", and the space at the end would still make the username invalid.

At the moment, I'm creating English Wikipedia accounts for all usernames that existed in the Nostalgia Wikipedia. Therefore, almost all of the usernames affected by this bug in the English Wikipedia will have a dummy account associated with them.
Comment 30 Graham87 2010-05-10 07:16:22 UTC
I've found some edits where the username is stored in the database with two consecutive spaces. None of these edits can be found through the user contributions list. I have changed the bug summary accordingly. In this diff, the extra space is not apparent when looking at the page in a browser, but it is obvious when checking the HTML source code:
Comment 31 Graham87 2010-08-14 09:16:19 UTC
Here is an example from Meta of a username with a lower-case letter from the Phase II software:
I've also changed the bug summary to be more informative.
Comment 34 Graham87 2010-08-14 15:33:37 UTC
Hmmm, this is probably due to the facte that the rev_user field is non-zero for each of the edits listed in those two links, and in fact is linked to the user ID of the user who made the edit; this never happens in the English Wikipedia, so these methods cannot be used there. The rev_user field shows the user ID of the editor who made a particular edit; the equivalent field in the archive table is ar_user. The user ID for an edit is always 0 for anonymous editors, mass-imports and scripts; it isn't usually zero for normal registered users. If the user ID given for an edit made by a registered user is 0, then the "contribs" link won't show up for the user in the page history. This example comes from a mistaken import, but it is illustrative:

No contribs are found for Ryan_Lackey (see top of bug report) in the API of the English Wikipedia, because none of his edits have an associated non-zero user ID:
Comment 35 Nemo 2010-08-17 17:06:46 UTC
On the examples from Meta: note that in the history (and also Special:undelete) the links to user page a user talk are red even if the pages actually exist (I'm adding also a screenshot for future reference).
Comment 36 Nemo 2010-08-17 17:08:17 UTC
Created attachment 7634 [details]
Red link to existing lower case user and user talk pages

See bug 323 comment 35.
Comment 37 Graham87 2010-08-18 03:37:52 UTC
I've changed the summary once again, so it shows the correct fields!
Comment 38 Nemo 2010-08-19 13:43:04 UTC
Thanks to [[it:User:Mauro742]] you can now find the complete list of all 4336 affected revisions at [[User:Nemo_bis/Bug 323 revisions]].
Comment 39 Nemo 2010-10-31 18:09:35 UTC
Some edits of renamed users are affected, too, and have not been moved to the new username: compare by [[m:user:maveric149]] (lowercase: see also [[m:Special:Contributions/maveric149]] which for some reason is not empty) and which was created after the user was renamed to Daniel_Mayer ( and is now under the correct username Mav (I've just restored this page).
Comment 40 Phillip Patriakeas 2010-11-03 02:30:26 UTC
See also bug 3507, dealing with the usernames themselves instead of edits attributed to those users.
Comment 41 p858snake 2011-07-09 03:02:45 UTC
deblocking from 29757, these have nothing to do with user renames, they are caused from user accounts predating phase3 (aka mediawiki as we know it today)

Note You need to log in before you can comment on or make changes to this bug.