[
https://issues.apache.org/jira/browse/METRON-601?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15712271#comment-15712271
]
ASF GitHub Bot commented on METRON-601:
---------------------------------------
Github user nickwallen commented on the issue:
https://github.com/apache/incubator-metron/pull/381
After 3 commits we might finally have something sensible. :)
Iteration is protected by a defensive copy. Adding Puts is protected by
the synchronizedList which explicitly synchronizes on a mutex for an operation
like `add`.
> MockHTable Put Log is Not Thread Safe
> -------------------------------------
>
> Key: METRON-601
> URL: https://issues.apache.org/jira/browse/METRON-601
> Project: Metron
> Issue Type: Sub-task
> Reporter: Nick Allen
> Assignee: Nick Allen
>
> The MockHTable uses an ArrayList to store a log of Puts that have been
> submitted against the MockHTable. The MockHTable, along with the put log, is
> accessed from multiple threads during the integration tests. Access to the
> Put log is not thread safe, which is likely at least one cause of METRON-597.
> The Put log is used by multiple tests, but more so by the
> ProfilerIntegrationTest. This tests polls the list to block the thread until
> the expected number of Puts have been submitted. This is likely why this
> test is more impacted by this issue than others.
> The Put Log needs to made thread safe. See
> `org.apache.metron.test.mock.MockHTable.putLog`
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)