You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
If element doesn't exist in empty PCollection - PAssert.thatSingleton emits the following error message:
java.util.NoSuchElementException
org.apache.beam.sdk.Pipeline$PipelineExecutionException: java.util.NoSuchElementException
(stack trace)
Caused by: java.util.NoSuchElementException
at java.base/java.util.ArrayList$Itr.next(ArrayList.java:970)
at org.apache.beam.vendor.guava.v32_1_2_jre.com.google.common.collect.Iterators.getOnlyElement(Iterators.java:309)
at org.apache.beam.vendor.guava.v32_1_2_jre.com.google.common.collect.Iterables.getOnlyElement(Iterables.java:263)
at org.apache.beam.sdk.testing.PAssert$SingletonCheckerDoFn.processElement(PAssert.java:1613)
If element is not the only element in PCollection - PAssert.thatSingleton emits the following error message:
java.lang.IllegalArgumentException: expected one element but was: (...)
org.apache.beam.sdk.Pipeline$PipelineExecutionException: java.lang.IllegalArgumentException: expected one element but was: (...)
(stack trace)
Caused by: java.lang.IllegalArgumentException: expected one element but was: (...) at org.apache.beam.vendor.guava.v32_1_2_jre.com.google.common.collect.Iterators.getOnlyElement(Iterators.java:323)
at org.apache.beam.vendor.guava.v32_1_2_jre.com.google.common.collect.Iterables.getOnlyElement(Iterables.java:263)
at org.apache.beam.sdk.testing.PAssert$SingletonCheckerDoFn.processElement(PAssert.java:1613)
For presented scenarios assertion errors doesn't really help - there is no assertion call site info.
private static class SingletonCheckerDoFn ... {
@ProcessElement
public void processElement(ProcessContext c) {
ActualT actualContents = Iterables.getOnlyElement(c.element()); // <- runtime exception here
c.output(doChecks(site, actualContents, checkerFn)); // <- no doCheck call with proper assertion site info
}
}
Issue Priority
Priority: 3 (nice-to-have improvement)
Issue Components
Component: Python SDK
Component: Java SDK
Component: Go SDK
Component: Typescript SDK
Component: IO connector
Component: Beam examples
Component: Beam playground
Component: Beam katas
Component: Website
Component: Spark Runner
Component: Flink Runner
Component: Samza Runner
Component: Twister2 Runner
Component: Hazelcast Jet Runner
Component: Google Cloud Dataflow Runner
The text was updated successfully, but these errors were encountered:
What would you like to happen?
If element doesn't exist in empty PCollection - PAssert.thatSingleton emits the following error message:
If element is not the only element in PCollection - PAssert.thatSingleton emits the following error message:
For presented scenarios assertion errors doesn't really help - there is no assertion call site info.
Issue Priority
Priority: 3 (nice-to-have improvement)
Issue Components
The text was updated successfully, but these errors were encountered: