You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Daniel Wegener (JIRA)" <ji...@apache.org> on 2016/08/16 11:16:21 UTC

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

Daniel Wegener created DOXIA-543:
------------------------------------

             Summary: 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


The PegDownProcess 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 taht 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.4#6332)