Advertising

METRON-597 Sporadic Failures of Profiler Integration Tests
## [METRON-597](https://issues.apache.org/jira/browse/METRON-597)
### Changes
#### MockHTable
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, but it is not
thread safe.
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.
#### Test Validation
Some of the test validation was very opinionated about the number of times
the Profiler itself had flushed. As the integration test is being validated,
the Profiler is running in the background and will continue to flush
measurements.
The validation was changed to not care how many times the Profiler has
flushed measurements to HBase.
### Testing
Prior to these changes, the Travis CI build was reliably failing. After
making these changes, the Travis CI build has passed at least 6 times in a row.
I have also run this repeatedly on my local machine and have not
experienced any failures.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/nickwallen/incubator-metron METRON-597-2
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/incubator-metron/pull/383.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #383
----
commit 7344c05a2fe4add2809bbb3ea94b6c4d3bd937f6
Author: Nick Allen <n...@nickallen.org>
Date: 2016-11-30T18:37:26Z
METRON-597 Sporadic Failures of Profiler Integration Tests
----
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---