-
Notifications
You must be signed in to change notification settings - Fork 735
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
iothub_registrymanager_sample fails; curl_easy_perform() failed: Out of memory #219
Comments
Replacing libcurl-openssl-dev with libcurl-gnutls-dev allows the example to run successfully. |
Thanks for the heads up, we are looking into this and will try to repro the issue. |
Same issue running the python client sample. Error: Time:Tue Oct 3 16:10:32 2017 File:/home/pi/azure-iot-sdk-python/c/c-utility/adapters/httpapi_curl.c Func:HTTPAPI_ExecuteRequest Line:554 (result = HTTPAPI_OPEN_REQUEST_FAILED) |
@jcwren Can you explain how? "Replacing libcurl-openssl-dev with libcurl-gnutls-dev allows the example to run successfully." Thanks. |
And looks like this was addressed in iot-edge. |
I'm not sure I can explain how. I uninstalled libcurl-openssl-dev, installed libcurl-gnutls-dev, recompiled the project, and it didn't generate the out of memory error. Switched it back, it failed. If that's not sufficient, can you give me a little more detail on what you're looking for, please? |
This comment applies to Raspbian Stretch and Blob upload but error is the same.
Replacing openssl with libcurl4-gnutls-dev helps, but generates different error although file is successfully uploaded:
As far as I looked into curl documentation this is due fact that this option (CURLOPT_SSL_CTX_FUNCTION) works only with SSL. |
Hi @jcwren, from your comment posted on Sept 6th are you unblocked now? |
On my raspbian linux and using SDK 1.1.26 problem still persists, with the same solution as in my previous comment |
I'm having some problem on Mac OS X: Info: IoT Hub SDK for C, version 1.1.27 Error: Time:Sat Nov 18 10:41:09 2017 File:/Users/dllau/azure-iot-sdk-c/c-utility/adapters/httpapi_curl.c Func:HTTPAPI_ExecuteRequest Line:558 (result = HTTPAPI_OPEN_REQUEST_FAILED) |
get_device also doesn't work:
Produces this error:
|
This is a valid workaround that will remove openssl in favor of gnutls.
|
Maybe I’m getting there. I made some changes in cmakegui, but I’ll not confident in them. However, I did get it to compile and running the upload blob sample, I’m now getting a new error:
Starting the IoTHub client sample upload to blob...
Info: IoT Hub SDK for C, version 1.1.29
Error: Time:Fri Jan 12 18:34:33 2018 File:/Users/dllau/azure-iot-sdk-c/c-utility/adapters/httpapi_curl.c Func:HTTPAPI_ExecuteRequest Line:556 curl_easy_perform() failed: Peer certificate cannot be authenticated with given CA certificates
Error: Time:Fri Jan 12 18:34:33 2018 File:/Users/dllau/azure-iot-sdk-c/c-utility/adapters/httpapi_curl.c Func:HTTPAPI_ExecuteRequest Line:558 (result = HTTPAPI_OPEN_REQUEST_FAILED)
Error: Time:Fri Jan 12 18:34:33 2018 File:/Users/dllau/azure-iot-sdk-c/c-utility/src/httpapiex.c Func:HTTPAPIEX_ExecuteRequest Line:475 unable to recover sending to a working state
Error: Time:Fri Jan 12 18:34:33 2018 File:/Users/dllau/azure-iot-sdk-c/iothub_client/src/iothub_client_ll_uploadtoblob.c Func:IoTHubClient_LL_UploadToBlob_step1and2 Line:403 unable to HTTPAPIEX_SAS_ExecuteRequest
Error: Time:Fri Jan 12 18:34:33 2018 File:/Users/dllau/azure-iot-sdk-c/iothub_client/src/iothub_client_ll_uploadtoblob.c Func:IoTHubClient_LL_UploadMultipleBlocksToBlob_Impl Line:908 error in IoTHubClient_LL_UploadToBlob_step1
hello world failed to upload
I’ve seen references to this problem elsewhere, however, there are no clear instructions how to fix, just that there exists this header and c file, certs.c, and that that should fix it.
On Jan 12, 2018, at 4:59 PM, ewertons <[email protected]> wrote:
Hi @jcwren <https://github.com/jcwren> ,
this issue is related to the root cause described in #308 <#308>
Could you try upgrading the curl libraries and verify if the issue you are experiencing is resolved?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub <#219 (comment)>, or mute the thread <https://github.com/notifications/unsubscribe-auth/AKL1ohtO2RRyv3qtxiSQqq_nDR9fHQ50ks5tJ9XCgaJpZM4PBo4F>.
|
This is interesting. Just to confirm, your machine time is in correct right? And is it on the EAST coast timezone? I would perhaps ask to get the CURL verbose logs enabled so we can get any more info. |
Hi @jcwren and @drhalftone , |
I keep getting error messages but the actual operations seem to be completing. Should I be concerned about the error messages?
On Jan 29, 2018, at 1:49 PM, ewertons <[email protected]> wrote:
Hi @jcwren <https://github.com/jcwren> and @drhalftone <https://github.com/drhalftone> ,
we are closing this issue. Once you have a chance to try using the solution posted or if you have any other problems regarding this issue please feel free to reopen it if you need to follow up.
Thanks,
Azure IoT Team
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub <#219 (comment)>, or mute the thread <https://github.com/notifications/unsubscribe-auth/AKL1osPLhEf-AahuZswgHTWXAtBIm_HWks5tPjzbgaJpZM4PBo4F>.
|
The SDK should not be producing any error messages if everything is going well. To make sure we have a fresh and clean log, would you mind getting the full output you get (with verbose logging if possible) and paste it here for us to analyze? |
As soon as I get some free time, I’ll try it again.
On Jan 29, 2018, at 2:42 PM, ewertons <[email protected]> wrote:
The SDK should not be producing any error messages if everything is going well.
To make sure we have a fresh and clean log, would you mind getting the full output you get (with verbose logging if possible) and paste it here for us to analyze?
Thanks @drhalftone <https://github.com/drhalftone>
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub <#219 (comment)>, or mute the thread <https://github.com/notifications/unsubscribe-auth/AKL1op4-9qUFBZvO7KHtXtaxUsVe2FHTks5tPklxgaJpZM4PBo4F>.
|
Closing as it's been a month since last communication. As always, please reactive this issue or open a new one if there's further followups needed. Thanks. |
Hi @jcwren , @drhalftone, we will continue tracking your specific issue through the other ticker we have opened (#308). If you have reasons to keep this one opened as well, please feel free to reopen it. Thanks, |
Description of the issue:
Trying to run iothub_registrymanager_sample, and it is failing with curl_easy_perform() reporting out of memory.
Code sample exhibiting the issue:
See samples/iothub_registrymanager_sample/iothub_registrymanager_sample.c
Additional notes
I don't believe this is causing the problem, as other sample code in the project is running, but when during the linking phase of any binary, I see the following:
Even the most recent versions of libcurl say only libssl < 1.1 is supported. However, many other packages in the system depend on 1.1, so there's no way to downgrade everything to 1.0.2. I have not found any way to tell cmake to use the libssl.so.1.0.2 and libcrypto.so.1.0.2 that libcurl4-openssl-dev installs. Conducting an earlier experiment by linking libssl.so to libssl.so.1.0.2 resulted in several functions not being found (libcrypto was also redirected at the same time).
Console log of the issue:
The text was updated successfully, but these errors were encountered: