-
Notifications
You must be signed in to change notification settings - Fork 160
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
Block remote config signals during ftp functions #2957
Conversation
e0019c6
to
93865c3
Compare
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #2957 +/- ##
=========================================
Coverage 66.52% 66.52%
Complexity 2739 2739
=========================================
Files 109 109
Lines 10831 10831
=========================================
Hits 7205 7205
Misses 3626 3626
Flags with carried forward coverage won't be shown. Click here to find out more. Continue to review full report in Codecov by Sentry.
|
Benchmarks [ tracer ]Benchmark execution time: 2024-11-18 13:31:06 Comparing candidate commit d5a6ed1 in PR branch Found 14 performance improvements and 1 performance regressions! Performance is the same for 163 metrics, 0 unstable metrics. scenario:EmptyFileBench/benchEmptyFileBaseline
scenario:EmptyFileBench/benchEmptyFileBaseline-opcache
scenario:EmptyFileBench/benchEmptyFileOverhead
scenario:EmptyFileBench/benchEmptyFileOverhead-opcache
scenario:LaravelBench/benchLaravelBaseline
scenario:LaravelBench/benchLaravelBaseline-opcache
scenario:LaravelBench/benchLaravelOverhead
scenario:LaravelBench/benchLaravelOverhead-opcache
scenario:PDOBench/benchPDOBaseline
scenario:SymfonyBench/benchSymfonyBaseline
scenario:SymfonyBench/benchSymfonyBaseline-opcache
scenario:SymfonyBench/benchSymfonyOverhead
scenario:SymfonyBench/benchSymfonyOverhead-opcache
scenario:WordPressBench/benchWordPressOverhead
scenario:WordPressBench/benchWordPressOverhead-opcache
|
5f0da0e
to
19dcc2f
Compare
|
||
original_function(INTERNAL_FUNCTION_PARAM_PASSTHRU); | ||
|
||
sigprocmask(SIG_UNBLOCK, &x, NULL); |
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.
If my understanding is correct, this will re-emit at least one queued signal, meaning that you may not need to call ddtrace_check_for_new_config_now
.
If invoking sigprocmask causes any pending signals to be unblocked, at least one of those signals is delivered to the process before sigprocmask returns. The order in which pending signals are delivered is not specified, but you can control the order explicitly by making multiple sigprocmask calls to unblock various signals one at a time. (reference)
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.
Interesting, that's really nice. Manpages for non-Linux (e.g. macos) say no such thing, so I'll #ifndef __linux__
this.
Done by deduplicating them. Signed-off-by: Bob Weinand <[email protected]> Handle case where the applictaion is stopped without other telemetry sent This lead down to a path where the Stop action was actually enqueued without being ever causing a removal of the Application instances. Signed-off-by: Bob Weinand <[email protected]>
Signed-off-by: Bob Weinand <[email protected]>
These are sensitive to EINTR, so block the signal during their execution. Fixes #2952. Signed-off-by: Bob Weinand <[email protected]>
9dc34b5
to
ae21545
Compare
Benchmarks [ appsec ]Benchmark execution time: 2024-11-18 13:39:05 Comparing candidate commit d5a6ed1 in PR branch Found 5 performance improvements and 0 performance regressions! Performance is the same for 7 metrics, 0 unstable metrics. scenario:LaravelBench/benchLaravelBaseline-appsec
scenario:LaravelBench/benchLaravelOverhead-appsec
scenario:SymfonyBench/benchSymfonyBaseline-appsec
scenario:SymfonyBench/benchSymfonyOverhead-appsec
scenario:WordPressBench/benchWordPressOverhead-appsec
|
Signed-off-by: Bob Weinand <[email protected]>
ae21545
to
d5a6ed1
Compare
These are sensitive to EINTR, so block the signal during their execution.
Fixes #2952.