Tobias Gruetzmacher opened SPR-13977 and commented
The implementation of getDelay in TimerScheduledFuture in org.springframework.scheduling.commonj.TimerManagerTaskScheduler is inverted: It return negative values when the timer hasn't elapsed and positive values if it has. This violates the contract of the Delayed interface...
Affects: 3.2.16, 4.2.4
Reference URL: https://github.com/spring-projects/spring-framework/blob/master/spring-context-support/src/main/java/org/springframework/scheduling/commonj/TimerManagerTaskScheduler.java#L136
Backported to: 3.2.17