The MultithreadedTestCase class is unreliable under heavy contention for
CPUs, causing the LoginHandlerInterceptorJUnitTest's thread safety test
to fail intermittently in CI. We replaced MultithreadedTestCase (in this
one class) with a more reliable Semaphore-based mechanism to coordinate
the threads.

Also:
* Used ConcurrencyRule to run the multiple threads and collect errors.
* Added geode-junit to geode-web test classpath, to pick up
ConcurrencyRule.
* Simplified the thread-safety test to focus on thread-safety, leaving
basic correctness to other tests.

Signed-off-by: Helena Bales <[email protected]>

Thank you for submitting a contribution to Apache Geode.

In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:

### For all changes:
- [ ] Is there a JIRA ticket associated with this PR? Is it referenced in the 
commit message?

- [ ] Has your PR been rebased against the latest commit within the target 
branch (typically `develop`)?

- [ ] Is your initial contribution a single, squashed commit?

- [ ] Does `gradlew build` run cleanly?

- [ ] Have you written or updated unit tests to verify your changes?

- [ ] If adding new dependencies to the code, are these dependencies licensed 
in a way that is compatible for inclusion under [ASF 
2.0](http://www.apache.org/legal/resolved.html#category-a)?

### Note:
Please ensure that once the PR is submitted, you check travis-ci for build 
issues and
submit an update to your PR as soon as possible. If you need help, please send 
an
email to [email protected].

Please review: @pdxrunner @kirklund @upthewaterspout @rhoughton-pivot 
@pivotal-jbarrett 

[ Full content available at: https://github.com/apache/geode/pull/2492 ]
This message was relayed via gitbox.apache.org for 
[email protected]

Reply via email to