open-telemetry / otel-arrow

Protocol and libraries for sending and receiving OpenTelemetry data using Apache Arrow
Apache License 2.0
83 stars 15 forks source link

Update to OTel Collector v0.102.x #219

Closed jmacd closed 4 months ago

jmacd commented 4 months ago

The steps for this update are documented in CONTRIBUTING.md. Version 0.102.x was released this week.

This exposed breakage in the release process, not fully investigated. I observed that when the go.work file was involved, go mod could not resolve dependencies (which is somehow related to the lack of replace statements). I have removed the go.work file.

To repair the release process, I've run the OTel collector build-tools crosslink tool, which inserts replace statements. The consequence is that go run, go install, and so on can no longer be used on the otelarrowcol target. This is unfortunate, but our release process was already shaky because of the unconventional use of go.work.

Removes the experiment processor (and all examples that refer to it) because it used a deprecated API in the collector. This could be replaced by a connector, but we haven't been using it, so it's removed.

jmacd commented 4 months ago

The build failure appears to be some sort of regression in go work functionality.

../../lightstep/go/pkg/mod/google.golang.org/grpc@v1.64.0/status/status.go:35:2: ambiguous import: found package google.golang.org/genproto/googleapis/rpc/status in multiple modules:
    google.golang.org/genproto v0.0.0-20210624195500-8bfb893ecb84 (/Users/josh.macdonald/src/lightstep/go/pkg/mod/google.golang.org/genproto@v0.0.0-20210624195500-8bfb893ecb84/googleapis/rpc/status)
    google.golang.org/genproto/googleapis/rpc v0.0.0-20240520151616-dc85e6b867a5 (/Users/josh.macdonald/src/lightstep/go/pkg/mod/google.golang.org/genproto/googleapis/rpc@v0.0.0-20240520151616-dc85e6b867a5/status)

I have removed the go.work file and added replace statements via crosslink, the same tool collector(-contrib) uses. The use of crosslink is not automated, will have to be sorted out. It will not be possible to go install or go run the Arrow collector from the repo until this is resolved (as it is with the OTel Collector(-Contrib) repos).