You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Michael Osipov (JIRA)" <ji...@apache.org> on 2017/02/04 22:58:52 UTC

[jira] [Assigned] (DOXIA-543) maven-doxia-markdown fails in parallel builds

     [ https://issues.apache.org/jira/browse/DOXIA-543?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Michael Osipov reassigned DOXIA-543:
------------------------------------

    Assignee: Michael Osipov

> maven-doxia-markdown fails in parallel builds
> ---------------------------------------------
>
>                 Key: DOXIA-543
>                 URL: https://issues.apache.org/jira/browse/DOXIA-543
>             Project: Maven Doxia
>          Issue Type: Bug
>          Components: Module - Markdown
>    Affects Versions: 1.7
>            Reporter: Daniel Wegener
>            Assignee: Michael Osipov
>             Fix For: 1.8
>
>   Original Estimate: 10m
>  Remaining Estimate: 10m
>
> The PegDownProcessor used at https://github.com/apache/maven-doxia/blob/doxia-1.7/doxia-modules/doxia-module-markdown/src/main/java/org/apache/maven/doxia/module/markdown/MarkdownParser.java#L72 is shared between multiple concurrent executions of the maven-site-plugin.
> This leads to random errors (NPEs, ClassCastException) because the parser state machine is reused by multiple threads.
> It seem not to be enough to make the field non-static since the whole MarkdownParser instance seem to be shared between different threads.
> The PegDown Javadoc explicitly states that a PegDownProcessor is not thread-safe: https://github.com/sirthias/pegdown/blob/master/src/main/java/org/pegdown/PegDownProcessor.java
> Possible solutions:
> - Put the PegDownProcessor into a threadLocal.
> - Instanciate the PegDownProcessor in the toHtml method.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)