[ 
https://issues.apache.org/jira/browse/FLINK-23478?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17386113#comment-17386113
 ] 

Yi Tang edited comment on FLINK-23478 at 7/23/21, 10:03 AM:
------------------------------------------------------------

[~fly_in_gis] The cause is that a simpler lock can not guarantee the absolute 
order event it is a "fair" lock,  because the later event can be executed 
earlier to the cached thread pool executor, so the lock attempt occur earlier 
also.

Maybe we still need to manually handle it in the {{WatchCallback}}, like submit 
a runnable if events come and terminate if all queued events are processed in a 
short period.


cc [~dmvk]


was (Author: yittg):
[~fly_in_gis] The possible cause is still that a simpler lock can not guarantee 
the absolute order event it is a "fair" lock, the later event can submit 
earlier to the cached thread pool executor.
Maybe we still need to manually handle it in the {{WatchCallback}}, like submit 
a runnable if events come and terminate if all queued events are processed in a 
short period.
cc [~dmvk]

> KubernetesSharedInformerITCase.testWatchWithBlockHandler fails on Azure
> -----------------------------------------------------------------------
>
>                 Key: FLINK-23478
>                 URL: https://issues.apache.org/jira/browse/FLINK-23478
>             Project: Flink
>          Issue Type: Bug
>          Components: Deployment / Kubernetes
>    Affects Versions: 1.14.0
>            Reporter: Dawid Wysakowicz
>            Priority: Major
>              Labels: test-stability
>
> https://dev.azure.com/apache-flink/apache-flink/_build/results?buildId=20864&view=logs&j=c88eea3b-64a0-564d-0031-9fdcd7b8abee&t=070ff179-953e-5bda-71fa-d6599415701c&l=3190
> {code}
> Jul 23 04:41:49 java.util.concurrent.ExecutionException: 
> java.lang.AssertionError
> Jul 23 04:41:49       at 
> java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:357)
> Jul 23 04:41:49       at 
> java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1928)
> Jul 23 04:41:49       at 
> org.apache.flink.kubernetes.kubeclient.resources.KubernetesSharedInformerITCase.testWatchWithBlockHandler(KubernetesSharedInformerITCase.java:140)
> Jul 23 04:41:49       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native 
> Method)
> Jul 23 04:41:49       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> Jul 23 04:41:49       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> Jul 23 04:41:49       at java.lang.reflect.Method.invoke(Method.java:498)
> Jul 23 04:41:49       at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
> Jul 23 04:41:49       at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
> Jul 23 04:41:49       at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
> Jul 23 04:41:49       at 
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
> Jul 23 04:41:49       at 
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
> Jul 23 04:41:49       at 
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
> Jul 23 04:41:49       at 
> org.apache.flink.util.TestNameProvider$1.evaluate(TestNameProvider.java:45)
> Jul 23 04:41:49       at 
> org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:61)
> Jul 23 04:41:49       at 
> org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
> Jul 23 04:41:49       at 
> org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
> Jul 23 04:41:49       at 
> org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
> Jul 23 04:41:49       at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
> Jul 23 04:41:49       at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
> Jul 23 04:41:49       at 
> org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
> Jul 23 04:41:49       at 
> org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
> Jul 23 04:41:49       at 
> org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
> Jul 23 04:41:49       at 
> org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
> Jul 23 04:41:49       at 
> org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
> Jul 23 04:41:49       at 
> org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:54)
> Jul 23 04:41:49       at org.junit.rules.RunRules.evaluate(RunRules.java:20)
> Jul 23 04:41:49       at 
> org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
> Jul 23 04:41:49       at 
> org.junit.runners.ParentRunner.run(ParentRunner.java:413)
> Jul 23 04:41:49       at 
> org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:365)
> Jul 23 04:41:49       at 
> org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:273)
> Jul 23 04:41:49       at 
> org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
> Jul 23 04:41:49       at 
> org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:159)
> Jul 23 04:41:49       at 
> org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:384)
> Jul 23 04:41:49       at 
> org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:345)
> Jul 23 04:41:49       at 
> org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:126)
> Jul 23 04:41:49       at 
> org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:418)
> Jul 23 04:41:49 Caused by: java.lang.AssertionError
> Jul 23 04:41:49       at org.junit.Assert.fail(Assert.java:87)
> Jul 23 04:41:49       at org.junit.Assert.assertTrue(Assert.java:42)
> Jul 23 04:41:49       at org.junit.Assert.assertTrue(Assert.java:53)
> Jul 23 04:41:49       at 
> org.apache.flink.kubernetes.kubeclient.resources.KubernetesSharedInformerITCase$TestingBlockCallbackHandler.lambda$onAddOrUpdated$0(KubernetesSharedInformerITCase.java:292)
> Jul 23 04:41:49       at 
> org.apache.flink.kubernetes.kubeclient.resources.KubernetesSharedInformerITCase.check(KubernetesSharedInformerITCase.java:311)
> Jul 23 04:41:49       at 
> org.apache.flink.kubernetes.kubeclient.resources.KubernetesSharedInformerITCase.access$800(KubernetesSharedInformerITCase.java:54)
> Jul 23 04:41:49       at 
> org.apache.flink.kubernetes.kubeclient.resources.KubernetesSharedInformerITCase$TestingBlockCallbackHandler.onAddOrUpdated(KubernetesSharedInformerITCase.java:292)
> Jul 23 04:41:49       at 
> org.apache.flink.kubernetes.kubeclient.resources.KubernetesSharedInformerITCase$TestingBlockCallbackHandler.onAdded(KubernetesSharedInformerITCase.java:277)
> Jul 23 04:41:49       at 
> org.apache.flink.kubernetes.kubeclient.resources.KubernetesSharedInformer$EventHandler.lambda$null$1(KubernetesSharedInformer.java:227)
> Jul 23 04:41:49       at 
> org.apache.flink.kubernetes.kubeclient.resources.KubernetesSharedInformer$WatchCallback.lambda$run$0(KubernetesSharedInformer.java:273)
> Jul 23 04:41:49       at 
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
> Jul 23 04:41:49       at 
> java.util.concurrent.FutureTask.run(FutureTask.java:266)
> Jul 23 04:41:49       at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
> Jul 23 04:41:49       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
> Jul 23 04:41:49       at java.lang.Thread.run(Thread.java:748)
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to