[
https://issues.apache.org/jira/browse/NIFI-2636?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15433185#comment-15433185
]
Michael Moser commented on NIFI-2636:
-------------------------------------
I wrote a unit test that fails only about half the time due to this bug. I'm
not sure how to create a unit test that fails all the time. I'll go ahead with
an initial patch using this unit test, but suggestions are welcome.
> UnpackContent has concurrent thread safety issue, causes flowfiles to fail
> --------------------------------------------------------------------------
>
> Key: NIFI-2636
> URL: https://issues.apache.org/jira/browse/NIFI-2636
> Project: Apache NiFi
> Issue Type: Bug
> Components: Extensions
> Affects Versions: 0.7.0
> Reporter: Michael Moser
> Assignee: Michael Moser
>
> Shortly after merging NIFI-2611 I took a last look at the code and noticed
> that each onTrigger() call, when the Packaging Format property is set to "use
> mime.type attribute", that the class instance variable "private Unpacker
> unpacker" can change. When UnpackContent is set to > 1 concurrent task, this
> isn't thread safe. Thread A can set the unpacker to the TarUnpacker, but
> before it gets a chance to unpack its tar file, Thread B changes the unpacker
> to a FlowFileUnpackagerV3 which causes Thread A to fail its unpack.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)