lh2debug-2 opened a new pull request, #3421:
URL: https://github.com/apache/brpc/pull/3421

   Fixes #3420
   
   ## Summary
   
   This change keeps the current RPC span alive from Controller until the RPC 
finishes, SubmitSpan runs, or the Controller is reset. This lets root client 
spans without a local parent be submitted to rpcz instead of being destroyed 
after the caller-side temporary shared_ptr goes out of scope.
   
   Child client spans remain linked to their parent through weak local-parent 
references and parent-owned client lists, so they are still serialized under 
their parent without introducing shared_ptr cycles.
   
   ## Testing
   
   - Built brpc successfully with CMake in /tmp/brpc-community-build-rpcz.
   - Ran a small local demo test verifying that a root client span remains 
alive after the caller-side shared_ptr is released while Controller still owns 
the span.
   
   Note: the local CMake build used a temporary include-only workaround for an 
unrelated UBShm timer_mgr.cpp atomic_fetch_add/sub compile issue on GCC 8; no 
UBShm source change is included in this PR.


-- 
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]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to