-
Notifications
You must be signed in to change notification settings - Fork 3.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[C++] Add support for Protobuf 23.2 on non-Windows #35987
Comments
Homebrew is only effected for now. |
protocolbuffers/protobuf#12699 is also related. |
I opened a very similar issue just ahead of you: #35986 ;-) |
I have a feeling that this might not be backported to the 23.x series because it's effectively an ABI break. Perhaps I'm wrong though. Anyway, in conda-forge, we set |
I saw it but I think that it's a different problem. :-)
I think that it's one of workarounds. |
I am trying to run the verification tasks for MacOS from my fork:
Adding the following patch on top of the
And I am getting some failures on protobuf:
Examples: |
The error above is weird as that file is created in the cmake using protoc https://github.com/apache/arrow/blob/main/cpp/src/arrow/flight/CMakeLists.txt#L80 Maybe a system version is also found and used? |
I think so too. It looks like system Protobuf and bundled Protobuf are mixed. But it's strange... Our build process uses absolute path for
|
It seems ti was GRPC. It should work if we use:
And remove them from the Brewfile as seen on this testing PR: #35995 |
I think that arrow/cpp/cmake_modules/ThirdpartyToolchain.cmake Lines 4080 to 4084 in 0bbfe98
I think that this is needed. (Or we run FYI: We can specify
I think that this is not a blocker. |
Hi @kou, since only Homebrew is affected. Why not simply change protobuf to protobuf@21 in our brewfile? |
Oh, I didn't notice it! |
### Rationale for this change A temporary workaround for link errors caused by protobuf 23. ### What changes are included in this PR? Pin brew protobuf version to 21 for now. ### Are these changes tested? To be tested by CI pipelines. ### Are there any user-facing changes? No * Closes: #35987 Authored-by: Jin Shang <shangjin1997@gmail.com> Signed-off-by: Sutou Kouhei <kou@clear-code.com>
Reopen this because #36029 is a workaround. |
This allows us to use the latest `protobuf` with `libphonenumber`. See Homebrew#133508. It likely also allows us to use a newer `protobuf` and `grpc` in `apache-arrow`. See apache/arrow#35987.
This is a follow-up of apacheGH-36029. This is still a workaround.
@kou @js8544 from my understanding this fix on homebrew should allow us to unpin the versions of protobuf and grpc, right? |
It probably does! I'll open a PR to try this. |
Well, #36013 is still causing errors: https://github.com/apache/arrow/actions/runs/5277136967/jobs/9544769123?pr=36087. I'll try again once #36016 is merged. |
We don't need something because the problem was happen in upstream and it was fixed in upstream. |
Describe the enhancement requested
We can't resolve
google::protobuf::internal::ThreadSafeArena::thread_cache_
with Protobuf 23.2 on non-Windows:I think that protocolbuffers/protobuf#12983 solves this but it's not released yet.
Workarounds:
PROTOBUF_USE_DLLS
explicitly on non-Windows too.Component(s)
C++
The text was updated successfully, but these errors were encountered: