[ https://issues.apache.org/jira/browse/BEAM-4484?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16502211#comment-16502211 ]
Luke Cwik commented on BEAM-4484: --------------------------------- Options are: 1) Stop shading 2) Change package paths (either java or proto) 3) Try and find an option to disable this in the shade plugin > Shading model-pipeline / model-fn-execution / model-job-management produces > corrupted classes > --------------------------------------------------------------------------------------------- > > Key: BEAM-4484 > URL: https://issues.apache.org/jira/browse/BEAM-4484 > Project: Beam > Issue Type: Bug > Components: runner-direct > Reporter: Luke Cwik > Assignee: Luke Cwik > Priority: Major > > During investigation for test failures on > [https://github.com/apache/beam/pull/5445,] I discovered that the the post > shaded beam-model-pipeline proto filedescriptors were corrupted. It turns out > that during the shading process, an over eager string replacement inside a > class is corrupting an internal field, in this case it modifies the RunnerApi > file descriptor storing > {code:java} > org.apache.beam.model.pipeline.v1.AccumulationMode.Enum{code} > and changing it to > {code:java} > org.apache.beam.repackaged.beam_runners_direct_java.model.pipeline.v1.AccumulationMode.Enum{code} > This problem exists because the proto package name and the java package name > collide and use org.apache.beam.model.pipeline.v1. -- This message was sent by Atlassian JIRA (v7.6.3#76005)