You need to pass custom Dataflow worker jar. One of the ways of doing that
is adding it as a dependency, and using following code snippet:
opts.setDataflowWorkerJar(
BatchDataflowWorker.class
.getProtectionDomain()
.getCodeSource()
.getLocation()
.toString());
opts.setWorkerHarnessContainerImage("");
Coming with the disclaimer that it isn't for production :)
On Mon, Feb 17, 2020 at 8:34 AM Alex Van Boxel <[email protected]> wrote:
> Yes, running it manually with the normal parameters as I do for production
> Dataflow. I'm probably a bit ignorant on that, and I probably need to
> provide my own worker.
>
> Thanks for the hint... I'll dive into that.
>
> _/
> _/ Alex Van Boxel
>
>
> On Mon, Feb 17, 2020 at 8:16 AM Reuven Lax <[email protected]> wrote:
>
>> Are you running things manually? This probably means you are using an
>> out-of-date Dataflow worker. I believe that all tests on Jenkins will build
>> the Dataflow worker from head to prevent exactly this problem.
>>
>> On Sun, Feb 16, 2020 at 11:10 PM Alex Van Boxel <[email protected]> wrote:
>>
>>> Digging further in the traces, it seems like a result of changes to the
>>> model:
>>>
>>> Caused by: java.lang.ClassNotFoundException:
>>> org.apache.beam.model.pipeline.v1.StandardWindowFns$SessionsPayload$Enum
>>>
>>> I see changes by Lukasz Cwik. Will this be a problem for the release?
>>>
>>> _/
>>> _/ Alex Van Boxel
>>>
>>>
>>> On Sun, Feb 16, 2020 at 12:11 PM Alex Van Boxel <[email protected]>
>>> wrote:
>>>
>>>> Hey,
>>>>
>>>> I'm testing my own PR's against Dataflow, something I've done in the
>>>> past with success seem to fail now. I get this error:
>>>>
>>>> java.lang.NoClassDefFoundError: Could not initialize class
>>>> org.apache.beam.runners.dataflow.worker.repackaged.org.apache.beam.runners.core.construction.WindowingStrategyTranslation
>>>>
>>>> 1.
>>>>
>>>>
>>>> Am I doing something wrong?
>>>>
>>>> _/
>>>> _/ Alex Van Boxel
>>>>
>>>