-
Notifications
You must be signed in to change notification settings - Fork 440
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
Merge all commits of async-changes
into main
#1413
Merge all commits of async-changes
into main
#1413
Conversation
async-changes
async-changes
into main
Codecov Report
@@ Coverage Diff @@
## main #1413 +/- ##
==========================================
- Coverage 85.31% 84.67% -0.64%
==========================================
Files 154 155 +1
Lines 4377 4787 +410
==========================================
+ Hits 3734 4053 +319
- Misses 643 734 +91
|
That's all right.It may take a while to review this PR, there will definitely be more commits merged into main during this time. |
c160926
to
cd25708
Compare
I was on sick leave last week, will be reviewing this over this week. sorry about that. |
Let's target this PR for the next release v1.5.0 ( tentative 17th June). Need to review this PR before that. |
cd25708
to
4603f20
Compare
Thanks, and I have merged |
@lalitb Could you please take some time to review this PR? It's close to deadline(17th June) now. |
Yes @owent. Sorry about the delay. Metrics work internally and externally is taking lots of my bandwidth, but will definitely be completing this in the next couple of days. |
Interesting to see the outcome of this specs change - https://github.com/open-telemetry/opentelemetry-specification/pull/2452/files, what it means that exporter can upload multiple spans concurrently. |
According to this new specs change. should we remove the async |
Actually, if these new specs changes are merged (it's already approved by multiple people), the initial PR raised by you #1209 along with |
Do you think if we could do the new specs changes in another PR later?In which we can remove |
Yes agree. |
4603f20
to
88ee601
Compare
@owent - This was discussed in detail in today's community meeting. We felt that with otel-specs #2452 nearing merge (should happen most probably by next week), it would be good to clean up AsyncBatch* classes and the async-export-callback method before merging this PR. This would also ensure we don't do clean-up as a breaking change - e.g If some users start having a dependency on AsyncBatch* and async-export-callback methods, the cleanup would be a problem. I do see this as a major revert, and feel bad about it :( I can help with the cleanup on this PR to reduce your effort, please let me know? |
OK. I can start to remove |
Thanks, appreciated. No, we are not targeting this for 17th June, but for subsequent release. 17th June release would be a patch/minor release with a few bug fixes. |
I raise another PR #1456 to implement open-telemetry/opentelemetry-specification#2452 . I will update this PR after #1456 is merged. |
88ee601
to
6caa218
Compare
@lalitb |
exporters/otlp/include/opentelemetry/exporters/otlp/otlp_http_client.h
Outdated
Show resolved
Hide resolved
248b715
to
efc89d3
Compare
std::lock_guard<std::mutex> lock_guard{sessions_m_}; | ||
sessions_.insert({session_id, session}); | ||
|
||
// FIXME: Session may leak if it do not SendRequest |
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.
Will this be fixed in future PR?
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.
Yes, and all usage in opentelemetry-cpp will call SendRequest
, this is used to notice for users if they use curl::HttpClient
directly.(Though it's not designed for external usage.)
efc89d3
to
592092a
Compare
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.
Looks like it will take a few more days for me review it completely. The flow is a bit complex, a sequence/flow diagram would have been helpful to understand the flow and review it better. Thanks for your patience on this PR :)
592092a
to
6f23a4c
Compare
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.
LGTM. Thanks for your patience, I think any further issues with / without feature flag - we can handle separately if they come.
@@ -669,50 +933,51 @@ opentelemetry::sdk::common::ExportResult OtlpHttpClient::Export( | |||
request->ReplaceHeader("Content-Type", content_type); | |||
|
|||
// Send the request | |||
std::unique_ptr<ResponseHandler> handler(new ResponseHandler(options_.console_debug)); | |||
session->SendRequest(*handler); | |||
return HttpSessionData{ |
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.
Nit - fix above comment, as we don't send request, but save the session in SessionData?
6f23a4c
to
6f5dee4
Compare
@owent - Can you please confirm if it is good to merge? |
Yes, it's ready now. This PR include all commits from |
|
Signed-off-by: owent admin@owent.net
Fixes #1412 #1243 #1176 #1220
This PR is created by these process below.
Please review these changes, and I will rerun above progress and generate a new commit after some more commints are merged into
main
later.@open-telemetry/cpp-approvers
Changes
curl::HttpClient
usecurl_multi_handle
instead of creating a threadfor every request and it's able to reuse connections now. (#1317)
For significant contributions please make sure you have completed the following items:
CHANGELOG.md
updated for non-trivial changes