You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@beam.apache.org by Ankur Chauhan <an...@malloc64.com> on 2018/02/02 20:10:01 UTC

Unable to use MapState with DoFnTester

Hi,

I am trying to write some tests for a DoFn that has one StateSpecs.map()
type declared. When I run this test I get this error.

java.lang.UnsupportedOperationException: Parameter
StateParameter{referent=StateDeclaration{id=indexKeys, field=private final
org.apache.beam.sdk.state.StateSpec
com.brightcove.rna.transforms.functions.GenerateMutationsFn.INDEX_KEYS_SPEC,
stateType=org.apache.beam.sdk.state.MapState<java.lang.String,
com.google.protobuf.ByteString>}} not supported by DoFnTester

at
org.apache.beam.sdk.transforms.DoFnTester$5.dispatchDefault(DoFnTester.java:720)
at
org.apache.beam.sdk.transforms.DoFnTester$5.dispatchDefault(DoFnTester.java:705)
at
org.apache.beam.sdk.transforms.reflect.DoFnSignature$Parameter$Cases$WithDefault.dispatch(DoFnSignature.java:260)
at
org.apache.beam.sdk.transforms.reflect.DoFnSignature$Parameter.match(DoFnSignature.java:195)
at org.apache.beam.sdk.transforms.DoFnTester.<init>(DoFnTester.java:704)
at org.apache.beam.sdk.transforms.DoFnTester.of(DoFnTester.java:92)
at
com.brightcove.rna.transforms.functions.GenerateMutationsFnTest.testDefaultTimestamp(GenerateMutationsFnTest.java:42)

Is MapState supported with DoFnTester?

-- Ankur Chauhan

Re: Unable to use MapState with DoFnTester

Posted by Eugene Kirpichov <ki...@google.com>.
It's not. DoFnTester in general is deprecated: use TestPipeline and PAssert
instead.

On Fri, Feb 2, 2018, 12:10 PM Ankur Chauhan <an...@malloc64.com> wrote:

> Hi,
>
> I am trying to write some tests for a DoFn that has one StateSpecs.map()
> type declared. When I run this test I get this error.
>
> java.lang.UnsupportedOperationException: Parameter
> StateParameter{referent=StateDeclaration{id=indexKeys, field=private final
> org.apache.beam.sdk.state.StateSpec
> com.brightcove.rna.transforms.functions.GenerateMutationsFn.INDEX_KEYS_SPEC,
> stateType=org.apache.beam.sdk.state.MapState<java.lang.String,
> com.google.protobuf.ByteString>}} not supported by DoFnTester
>
> at
> org.apache.beam.sdk.transforms.DoFnTester$5.dispatchDefault(DoFnTester.java:720)
> at
> org.apache.beam.sdk.transforms.DoFnTester$5.dispatchDefault(DoFnTester.java:705)
> at
> org.apache.beam.sdk.transforms.reflect.DoFnSignature$Parameter$Cases$WithDefault.dispatch(DoFnSignature.java:260)
> at
> org.apache.beam.sdk.transforms.reflect.DoFnSignature$Parameter.match(DoFnSignature.java:195)
> at org.apache.beam.sdk.transforms.DoFnTester.<init>(DoFnTester.java:704)
> at org.apache.beam.sdk.transforms.DoFnTester.of(DoFnTester.java:92)
> at
> com.brightcove.rna.transforms.functions.GenerateMutationsFnTest.testDefaultTimestamp(GenerateMutationsFnTest.java:42)
>
> Is MapState supported with DoFnTester?
>
> -- Ankur Chauhan
>