-
Notifications
You must be signed in to change notification settings - Fork 62
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
PIP-209: Build C++ client in standalone repo #2
Conversation
Look like the build still failed. The
|
cb6a81d
to
00ac2b2
Compare
Yes, the build should be fixed now |
In my local env, the
|
I had one more change that I missed to include in the commit. fixed now. |
It still doesn't work.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It can be build successfully now. 🎉
### Motivation When libcurl is used in `AuthOauth2`, the `CURLOPT_NOSIGNAL` option is not set, i.e. it will be the default value so that the `Curl_resolv_timeout` function might crash in multi-threading environment. ``` #2 0xf630 in _L_unlock_13 from /lib64/libpthread.so.0 (0x34) #3 0x2e6c7f in Curl_failf from /usr/local/bin/***/libpulsar.so (0x6f) #4 0x30a285 in Curl_resolv_timeout from /usr/local/bin/***/libpulsar.so (0x95) ``` Since there are many duplicated code when calling curl C APIs, it's hard to notice that `CURLOPT_NOSIGNAL` is not configured in `AuthOauth2`. ### Modifications Introduce a `CurlWrapper` class that sets the same options to reduce the duplicated code and adapting consistent behaviors unless a few options.
…#313) ### Motivation When libcurl is used in `AuthOauth2`, the `CURLOPT_NOSIGNAL` option is not set, i.e. it will be the default value so that the `Curl_resolv_timeout` function might crash in multi-threading environment. ``` apache#2 0xf630 in _L_unlock_13 from /lib64/libpthread.so.0 (0x34) apache#3 0x2e6c7f in Curl_failf from /usr/local/bin/***/libpulsar.so (0x6f) apache#4 0x30a285 in Curl_resolv_timeout from /usr/local/bin/***/libpulsar.so (0x95) ``` Since there are many duplicated code when calling curl C APIs, it's hard to notice that `CURLOPT_NOSIGNAL` is not configured in `AuthOauth2`. ### Modifications Introduce a `CurlWrapper` class that sets the same options to reduce the duplicated code and adapting consistent behaviors unless a few options. (cherry picked from commit 787bfd0)
Changs to build C++ client in the new standalone repo