Page MenuHomePhabricator

Flow: ParsoidUtils exception "ID XXX already defined"
Closed, ResolvedPublic

Description

I saw this in exception.log:

2014-02-03 21:38:32 mw1132 enwiki: [89292370] /w/api.php   Exception from line 208 of /usr/local/apache/common-local/php-1.23wmf11/extensions/Flow/includes/ParsoidUtils.php: ID searchbox already defined

Maybe the HTML of the templates we added on enwiki today had two search boxes. pandiculation, do you recall seeing any errors?

You can reproduce by trying to add a post with

<span id="FLOW">first one</span>
<span id="FLOW">same ID</span>

two identical IDs is "illegal" HTML, so Parsoid rejects it. That's technically correct, but you can add the same wikitext without complaint to a regular page, so maybe this is a Parsoid bug and there should be some way to get Parsoid to be more relaxed.

Clicking Preview gives me

An unexpected error occurred.

(seems like another bug this should include the error message.)
Clicking Reply gives me a more helpful

An error occurred.
The error message received was: Exception Caught: ID searchbox already defined

FWIW invoking Parsoid from the command line with this HTML:

curl --dump-header - \
  -d 'wt=<span id="FLOW">first one</span> <span id="FLOW">same ID</span>'\
  -d 'body=1'  localhost:8000/localhost/Main_Page

doesn't report any errors or exceptions.

Here's the rest of the log

#0 /usr/local/apache/common-local/php-1.23wmf11/extensions/Flow/includes/ParsoidUtils.php(108): Flow\ParsoidUtils::createDOM('<!DOCTYPE html>...')
#1 /usr/local/apache/common-local/php-1.23wmf11/extensions/Flow/includes/ParsoidUtils.php(51): Flow\ParsoidUtils::parsoid('wikitext', 'html', '{{Flow-enabled}...', Object(Title))
#2 /usr/local/apache/common-local/php-1.23wmf11/extensions/Flow/includes/api/ApiParsoidUtilsFlow.php(13): Flow\ParsoidUtils::convert('wikitext', 'html', '{{Flow-enabled}...', Object(Title))
#3 /usr/local/apache/common-local/php-1.23wmf11/includes/api/ApiMain.php(861): ApiParsoidUtilsFlow->execute()
#4 /usr/local/apache/common-local/php-1.23wmf11/includes/api/ApiMain.php(362): ApiMain->executeAction()
#5 /usr/local/apache/common-local/php-1.23wmf11/includes/api/ApiMain.php(333): ApiMain->executeActionWithErrorHandling()
#6 /usr/local/apache/common-local/php-1.23wmf11/api.php(76): ApiMain->execute()
#7 /usr/local/apache/common-local/w/api.php(3): require('/usr/local/apac...')
#8 {main}


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

Details

Reference
bz60816

Event Timeline

bzimport raised the priority of this task from to Needs Triage.Nov 22 2014, 2:52 AM
bzimport set Reference to bz60816.
bzimport added a subscriber: Unknown Object (MLST).

(In reply to comment #0)

pandiculation, do you recall seeing any errors?

I submitted that as bug 60785

This is the underlying exception caused by the error in 60785

  • This bug has been marked as a duplicate of bug 60785 ***