[ https://issues.apache.org/jira/browse/FLINK-23960?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17407986#comment-17407986 ]
Piotr Nowojski commented on FLINK-23960: ---------------------------------------- [~akalashnikov] for the reason behind the {{getProcessingTimeDelay}} you can check FLINK-9857 that introduced it. In short the issue is that we want timers for time {{t}} to fire AFTER all records with {{timestamp <= t}} have been already processed. Without this 1ms delay, if we had fired the timer for {{t}} at the timestamp {{t}}, it would be possible that we would process another record for {{timestamp == t}} in the same millisecond. More concrete example, we could fire a window timer, produce records for that window and then we would receive another record that should have belong to that already emitted window. As it was unclear to you, can you expand the comment {{getProcessingTimeDelay}} to avoid future confusions? For adjust the tests, I think yes. We should adjust the expected sequence. > StreamTaskTimerTest.checkScheduledTimestamps fails on azure > ----------------------------------------------------------- > > Key: FLINK-23960 > URL: https://issues.apache.org/jira/browse/FLINK-23960 > Project: Flink > Issue Type: Bug > Components: Runtime / Task > Affects Versions: 1.14.0, 1.15.0 > Reporter: Xintong Song > Priority: Critical > Labels: test-stability > Fix For: 1.14.0, 1.15.0 > > > https://dev.azure.com/apache-flink/apache-flink/_build/results?buildId=22770&view=logs&j=f0ac5c25-1168-55a5-07ff-0e88223afed9&t=50bf7a25-bdc4-5e56-5478-c7b4511dde53&l=10736 > {code} > Aug 24 22:32:06 [ERROR] Tests run: 3, Failures: 1, Errors: 0, Skipped: 0, > Time elapsed: 1.421 s <<< FAILURE! - in > org.apache.flink.streaming.runtime.operators.StreamTaskTimerTest > Aug 24 22:32:06 [ERROR] checkScheduledTimestamps Time elapsed: 1.372 s <<< > FAILURE! > Aug 24 22:32:06 java.lang.AssertionError: expected:<1> but was:<0> > Aug 24 22:32:06 at org.junit.Assert.fail(Assert.java:89) > Aug 24 22:32:06 at > org.apache.flink.streaming.runtime.operators.StreamTaskTimerTest.verifyNoException(StreamTaskTimerTest.java:166) > Aug 24 22:32:06 at > org.apache.flink.streaming.runtime.operators.StreamTaskTimerTest.checkScheduledTimestamps(StreamTaskTimerTest.java:129) > Aug 24 22:32:06 at > java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > Aug 24 22:32:06 at > java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > Aug 24 22:32:06 at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > Aug 24 22:32:06 at > java.base/java.lang.reflect.Method.invoke(Method.java:566) > Aug 24 22:32:06 at > org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59) > Aug 24 22:32:06 at > org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) > Aug 24 22:32:06 at > org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56) > Aug 24 22:32:06 at > org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) > Aug 24 22:32:06 at > org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26) > Aug 24 22:32:06 at > org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27) > Aug 24 22:32:06 at > org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:299) > Aug 24 22:32:06 at > org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:293) > Aug 24 22:32:06 at > java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) > Aug 24 22:32:06 at java.base/java.lang.Thread.run(Thread.java:829) > {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)