You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@beam.apache.org by "Milan Patel (Jira)" <ji...@apache.org> on 2022/03/18 16:56:00 UTC

[jira] [Commented] (BEAM-13939) Go SDK: Protobuf namespace conflict

    [ https://issues.apache.org/jira/browse/BEAM-13939?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17508931#comment-17508931 ] 

Milan Patel commented on BEAM-13939:
------------------------------------

[~lostluck] Wanted to ping you here as well, I think the linked PR is ready for formal review

> Go SDK: Protobuf namespace conflict
> -----------------------------------
>
>                 Key: BEAM-13939
>                 URL: https://issues.apache.org/jira/browse/BEAM-13939
>             Project: Beam
>          Issue Type: Improvement
>          Components: beam-model, sdk-go
>    Affects Versions: 2.36.0
>            Reporter: Milan Patel
>            Priority: P2
>              Labels: easyfix
>         Attachments: demobug.zip
>
>          Time Spent: 14h 20m
>  Remaining Estimate: 0h
>
> The Go SDK generated grpc protobufs are not namespaced with enough granularity. If a user has another external dependency with the same protobuf file registered with the proto runtime, their compiled binary will panic at runtime pointing the user to this [doc page|https://developers.google.com/protocol-buffers/docs/reference/go/faq#fix-namespace-conflict]. 
> In the interim, following the instructions to add either ldflags to the compiler or an environment var to the binary works, but this is an unideal solution since only one of the duplicate proto specifications will be accessible from a [global registry|https://pkg.go.dev/google.golang.org/protobuf@v1.27.1/reflect/protoregistry].
>  
> Ask: Regenerate the go protos such that descriptors like [these|https://github.com/apache/beam/blob/84353a7c973d3acaaa56d81c265dce7193a56be5/sdks/go/pkg/beam/model/pipeline_v1/metrics.pb.go#L797-L811] are outputted with filenames that are more granular, such as a filename that includes the directory structure of the repository.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)