Last modified: 2014-03-10 23:48:34 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 T63298, the corresponding Phabricator task for complete and up-to-date bug report information.
Bug 61298 - Crasher in production
Crasher in production
Status: RESOLVED FIXED
Product: Parsoid
Classification: Unclassified
General (Other open bugs)
unspecified
All All
: Unprioritized normal
: ---
Assigned To: Gabriel Wicke
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2014-02-13 03:46 UTC by ssastry
Modified: 2014-03-10 23:48 UTC (History)
3 users (show)

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


Attachments

Description ssastry 2014-02-13 03:46:27 UTC
Some unhandled tplArgs handling case causes Parsoid to crash on this page.

http://localhost:8000/arwiki/%D9%85%D8%B3%D8%AA%D8%AE%D8%AF%D9%85%3A%D8%AE%D8%A7%D9%84%D8%AF%2F%D8%AA%D8%B5%D9%85%D9%8A%D9%85_%D8%A7%D9%84%D8%
B5%D9%81%D8%AD%D8%A9_%D8%A7%D9%84%D8%B1%D8%A6%D9%8A%D8%B3%D9%8A%D8%A9?oldid=9455774
Comment 1 Arlo Breault 2014-02-14 21:48:53 UTC
This is a regression introduced in 4d1f0abc7403a33f0aa4e6c0ee616f2b7b030a09.
Looking into it.
Comment 2 Arlo Breault 2014-02-14 23:38:33 UTC
test case here is:

echo "[{{fullurl:{{{link}}}|action=edit}} editar]" | node parse --prefix arwiki

fixed by putting back the token.clone() in ext.core.Sanitizer.js ~L735 but I'm still not quite sure why that is ...
Comment 3 Gerrit Notification Bot 2014-02-14 23:59:52 UTC
Change 113482 had a related patch set uploaded by Arlolra:
Fix crasher

https://gerrit.wikimedia.org/r/113482
Comment 4 Gerrit Notification Bot 2014-02-15 00:23:05 UTC
Change 113482 merged by jenkins-bot:
Fix crasher

https://gerrit.wikimedia.org/r/113482
Comment 5 Gabriel Wicke 2014-02-26 05:51:26 UTC
We should still investigate why the clone is necessary, and ideally remove it again without ill effects.
Comment 6 Arlo Breault 2014-02-26 07:04:34 UTC
There's a comment in the patch about what's going on.

Templates contained in templates get their attributes stripped when passing through the sanitizer, affecting the original token in the main pipeline.
Comment 7 ssastry 2014-02-26 15:42:57 UTC
Just to clarify, that specific problem was on Marc's "parse-template-args-to-DOM" patch. But, I think something equivalent is happening on master as well -- i.e. token sharing between main and sub-pipelines (which is not saying much that is not obvious from the fact that we are cloning :-)). That is what we should investigate.
Comment 8 Arlo Breault 2014-02-26 16:06:16 UTC
In comment 2 above I produced a test case from the crasher page that tracked the problem down to template in template being sanitized.
Comment 9 ssastry 2014-02-26 16:12:28 UTC
I should read the full comment thread before commenting then. :-)
Comment 10 Gerrit Notification Bot 2014-03-06 16:23:19 UTC
Change 117211 had a related patch set uploaded by GWicke:
Bug 61298: Avoid need for cloning when using PHP preprocessor

https://gerrit.wikimedia.org/r/117211
Comment 11 Gerrit Notification Bot 2014-03-08 03:09:27 UTC
Change 117211 merged by jenkins-bot:
Bug 61298: Avoid need for cloning when using PHP preprocessor

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

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


Navigation
Links