Details
-
Bug
-
Resolution: Obsolete
-
Blocker
-
None
-
6.0.0.Final
Description
The static counter used in FailAfterSecondCallReducer in TopologyAwareTwoNodesMapReduceTest.testInvokeMapWithReduceExceptionPhaseInRemoteExecution and SimpleTwoNodesMapReduceTest.testInvokeMapWithReduceExceptionPhaseInRemoteExecution has several problems:
1. Both tests use the same counter, if they run in parallel one could reset the counter for the other.
2. The counter update is not atomic, so the async thread that executes the reducer on the originator and the remote executor thread that executes the reducer on the remote node can both see value 0.
3. There is no guarantee that the reducer is executed on the originator first, so the exception isn't always thrown on the remote node.