codeconsole opened a new pull request, #3100:
URL: https://github.com/apache/groovy/pull/3100

   Some concurrency tests slept for a fixed time to let another thread get 
somewhere first, and failed on a loaded machine. They now wait for that state 
instead. For example, `BroadcastChannelAsPublisherTest.forAwaitOverPublisher` 
waits until the consumer has subscribed before it sends, and 
`AgentChangesTest.forAwaitOverChanges` waits until the consumer's `subscribe` 
call has returned. Likewise `BroadcastChannelTest`, `ActorTest`, 
`ChannelSelectTest` and, in `groovy-http-builder`, 
`MultiExchangeTickerEndToEndTest`.
   
   Three tests that need another thread to keep to a schedule no longer fail 
when it starts late: `ActorTest.testScheduleAtFixedRateFiresRepeatedly` waits 
for three ticks instead of counting them in 300 ms, the slow server of 
`AsyncAwaitSpecTest.testFastestServer` sleeps 5 seconds instead of 200 ms, and 
`ChannelSelectTest.testTimerCreatedOnceIsAFixedDeadlineAcrossSelects` starts 
its timer once the producer runs. Each change was checked by forcing the lost 
race with an injected delay. Test code only.
   
   The `groovy.concurrent` tests and `AsyncAwaitSpecTest` (296) and the 
`groovy-http-builder` tests (78) pass, as do the Checkstyle and CodeNarc gates.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to