Page MenuHomePhabricator

VisualEditor: [Regression] Unnamed references get their names corrupted
Closed, ResolvedPublic

Description

https://en.wikipedia.org/w/index.php?title=Matt_Chandler_%28pastor%29&curid=37214846&diff=573675359&oldid=571858677

For some reason, multiple different unnamed references all get name=":3" there.


Version: unspecified
Severity: normal
See Also:
https://bugzilla.wikimedia.org/show_bug.cgi?id=54445

Details

Reference
bz54341

Event Timeline

bzimport raised the priority of this task from to Unbreak Now!.Nov 22 2014, 2:02 AM
bzimport set Reference to bz54341.

Isolated test case: https://en.wikipedia.org/wiki/User:Ed_g2s/Sandbox4

Diagnosis:

The automatically generated names are based on the number of distinct references in the page up to that point, indexed at zero. The first unnamed <ref> tag is the 4th distinct reference on the page (it's preceded by two :1s, a :3 and a :0), so its autogenerated name is :3. However, there so happens to already be a literal <ref name=":3"> on the page, so we get a naming collision and the whole thing goes to hell.

In practice, this situation can only arise after multiple iterations of duplicating unnamed references with VE (which adds <ref name=":n"> tags to the source), then removing or reordering references so the ref tags are aligned exactly right for this bug to occur.

Change 85144 had a related patch set uploaded by Catrope:
Failing test for <ref name=":3"> bug

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

Change 85144 merged by jenkins-bot:
Prevent naming collisions when generating unique reference names

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

Change 85780 had a related patch set uploaded by Catrope:
Prevent naming collisions when generating unique reference names

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

Change 85781 had a related patch set uploaded by Catrope:
Prevent naming collisions when generating unique reference names

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

Change 85780 merged by jenkins-bot:
Prevent naming collisions when generating unique reference names

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

Change 85781 merged by jenkins-bot:
Prevent naming collisions when generating unique reference names

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

  • Bug 54654 has been marked as a duplicate of this bug. ***

James,
I think it can be confusing that the name and the number of a reference do not match, although the links work.
See https://en.wikipedia.org/w/index.php?title=User%3AElitre_%28WMF%29%2FSandbox&diff=575128343&oldid=575128003 (the reference #2 gets a ref name:3).

  • Bug 54445 has been marked as a duplicate of this bug. ***