Uploaded image for project: 'Beam'
  1. Beam
  2. BEAM-13600

Flink validatesPortableRunner* tasks failing locally

Details

    • Bug
    • Status: Open
    • P3
    • Resolution: Unresolved
    • None
    • None
    • runner-flink, testing
    • None

    Description

      Despite passing on Jenkins [1], portable Flink tests are failing on my linux desktop. The tests that fail don't seem to have any correlation. I suspect a race condition in Flink classloading.

      Tests that failed on my example run (Lara reported different tests though so I'm guessing they're basically random):

      MetricsPusherTest. pushesSystemMetrics
      MetricsPusherTest. pushesUserMetrics
      WithTimestampsTest. withTimestampsBackwardsInTimeAndWithAllowedTimestampSkewShouldSucceed
      WithTimestampsTest. withTimestampsLambdaShouldApplyTimestamps
      CoGroupByKeyTest. testCoGroupByKey
      CoGroupByKeyTest. testCoGroupByKeyGetOnly
      CoGroupByKeyTest. testCoGroupByKeyHandleResults
      CoGroupByKeyTest. testCoGroupByKeyWithWindowing
      WindowTest. testNoWindowFnDoesNotReassignWindows
      WindowTest. testTimestampCombinerDefault
      WindowTest. testTimestampCombinerEndOfWindow
      WindowingTest. testMergingWindowing
      WindowingTest. testNonPartitioningWindowing
      WindowingTest. testPartitioningWindowing
      WindowingTest. testWindowPreservation
      PCollectionTupleTest. testComposePCollectionTuple

      Errors look like this:

      java.lang.IllegalArgumentException: No classpath elements found.
      at org.apache.beam.runners.portability.PortableRunner.run(PortableRunner.java:136)
      at org.apache.beam.runners.portability.testing.TestPortableRunner.run(TestPortableRunner.java:80)
      at org.apache.beam.sdk.Pipeline.run(Pipeline.java:323)
      at org.apache.beam.sdk.testing.TestPipeline.run(TestPipeline.java:399)
      at org.apache.beam.sdk.testing.TestPipeline.run(TestPipeline.java:335)
      at org.apache.beam.sdk.transforms.WithTimestampsTest.withTimestampsLambdaShouldApplyTimestamps(WithTimestampsTest.java:206)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:498)
      at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
      at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
      at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
      at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
      at org.apache.beam.sdk.testing.TestPipeline$1.evaluate(TestPipeline.java:323)
      at org.junit.rules.ExpectedException$ExpectedExceptionStatement.evaluate(ExpectedException.java:258)
      at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
      at org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
      at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
      at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
      at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
      at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
      at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
      at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
      at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
      at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
      at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
      at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
      at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.runTestClass(JUnitTestClassExecutor.java:110)
      at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:58)
      at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:38)
      at org.gradle.api.internal.tasks.testing.junit.AbstractJUnitTestClassProcessor.processTestClass(AbstractJUnitTestClassProcessor.java:62)
      at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.processTestClass(SuiteTestClassProcessor.java:51)
      at sun.reflect.GeneratedMethodAccessor106.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:498)
      at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
      at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
      at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)
      at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
      at com.sun.proxy.$Proxy2.processTestClass(Unknown Source)
      at org.gradle.api.internal.tasks.testing.worker.TestWorker$2.run(TestWorker.java:176)
      at org.gradle.api.internal.tasks.testing.worker.TestWorker.executeAndMaintainThreadName(TestWorker.java:129)
      at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:100)
      at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:60)
      at org.gradle.process.internal.worker.child.ActionExecutionWorker.execute(ActionExecutionWorker.java:56)
      at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:133)
      at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:71)
      at worker.org.gradle.process.internal.worker.GradleWorkerMain.run(GradleWorkerMain.java:69)
      at worker.org.gradle.process.internal.worker.GradleWorkerMain.main(GradleWorkerMain.java:74)

      ./gradlew :runners:flink:1.13:job-server:validatesPortableRunnerStreaming

      [1] https://ci-beam.apache.org/job/beam_PostCommit_Java_PVR_Flink_Streaming

      Attachments

        Activity

          People

            Unassigned Unassigned
            ibzib Kyle Weaver
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated: