h-vetinari commented on issue #45033: URL: https://github.com/apache/arrow/issues/45033#issuecomment-3863661104
OK, now that azure got sorted I came back to this; with `-DNOMINMAX` in `CXXFLAGS` and the patch above, I got libarrow to build in https://github.com/conda-forge/arrow-cpp-feedstock/pull/1924; however, the tests all fail with ``` E0000 00:00:1770442241.390220 6520 descriptor_database.cc:678] File already exists in database: opentelemetry/proto/common/v1/common.proto ``` This has already come up in https://github.com/conda-forge/arrow-cpp-feedstock/pull/1048 > > > > @h-vetinari: it sounds like arrow shouldn't be re-loading the otel proto definitions? > > > > > > @h-vetinari: To top things off, it looks like there's a third potential source for this (at least in conda-forge), in addition to opentelemetry & arrow: https://github.com/conda-forge/proto-opentelemetry-proto-feedstock > > > > @xhochy: This happens if two libraries load the same protobuf definition in a different, conflicting version. We have the same problem with all the onnx-* packages. The workaround for this is build all (except at most one) with static protobuf so that each library gets its own protobuf (global) namespace. > > @lidavidm: Hmm, something seems wrong. Arrow itself shouldn't be loading the OpenTelemetry Protobuf generated code. Either we actually built a bundled copy of OpenTelemetry (doesn't seem so) or we still statically linked OpenTelemetry somehow? (Shouldn't be possible?) Or possibly multiple OpenTelemetry libraries included the Protobuf generated code? This was never solved because we ended up dropping windows from that PR. We do run into this problem in conda-forge occasionally, and I don't remember a durable solution (e.g. in https://github.com/conda-forge/tensorflow-feedstock/pull/437, we gave up, c.f. [this patch](https://github.com/conda-forge/tensorflow-feedstock/blob/2fee47423bf1054b6adc80caa597f53c3d4693df/recipe/patches/0041-Disable-profiler.patch#L8)). -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
