fix(appsec): catch correctly BlockingException aggregated in ExceptionGroup#14250
Conversation
|
|
485ec85 to
c154938
Compare
Bootstrap import analysisComparison of import times between this PR and base. SummaryThe average import time from this PR is: 278 ± 3 ms. The average import time from base is: 279 ± 3 ms. The import time difference between this PR and base is: -0.9 ± 0.2 ms. Import time breakdownThe following import paths have shrunk:
|
Performance SLOsCandidate: florentinl/fix-fastapi-blocking-exception-catching (c1bdc04) 🔵 No Baseline Data (24 suites)🔵 coreapiscenario - 12/12 (2 unstable)🔵 No baseline data available for this suite
|
1445a34 to
a09c4ee
Compare
87f7011 to
f6eb297
Compare
f6eb297 to
91e0596
Compare
91e0596 to
c1bdc04
Compare
…nGroup (#14250) ## Description When an Appsec `BlockingException` is raised within a fastapi middleware, it can be aggregated and nested in a `BaseExceptionGroup` multiple levels deep. The behaviour occurs when using http middlewares. ## Checklist - [x] PR author has checked that all the criteria below are met - The PR description includes an overview of the change - The PR description articulates the motivation for the change - The change includes tests OR the PR description describes a testing strategy - The PR description notes risks associated with the change, if any - Newly-added code is easy to change - The change follows the [library release note guidelines](https://ddtrace.readthedocs.io/en/stable/releasenotes.html) - The change includes or references documentation updates if necessary - Backport labels are set (if [applicable](https://ddtrace.readthedocs.io/en/latest/contributing.html#backporting)) ## Reviewer Checklist - [x] Reviewer has checked that all the criteria below are met - Title is accurate - All changes are related to the pull request's stated goal - Avoids breaking [API](https://ddtrace.readthedocs.io/en/stable/versioning.html#interfaces) changes - Testing strategy adequately addresses listed risks - Newly-added code is easy to change - Release note makes sense to a user of the library - If necessary, author has acknowledged and discussed the performance implications of this PR as reported in the benchmarks PR comment - Backport labels are set in a manner that is consistent with the [release branch maintenance policy](https://ddtrace.readthedocs.io/en/latest/contributing.html#backporting) (cherry picked from commit b74e3da)
…nGroup (#14250) ## Description When an Appsec `BlockingException` is raised within a fastapi middleware, it can be aggregated and nested in a `BaseExceptionGroup` multiple levels deep. The behaviour occurs when using http middlewares. ## Checklist - [x] PR author has checked that all the criteria below are met - The PR description includes an overview of the change - The PR description articulates the motivation for the change - The change includes tests OR the PR description describes a testing strategy - The PR description notes risks associated with the change, if any - Newly-added code is easy to change - The change follows the [library release note guidelines](https://ddtrace.readthedocs.io/en/stable/releasenotes.html) - The change includes or references documentation updates if necessary - Backport labels are set (if [applicable](https://ddtrace.readthedocs.io/en/latest/contributing.html#backporting)) ## Reviewer Checklist - [x] Reviewer has checked that all the criteria below are met - Title is accurate - All changes are related to the pull request's stated goal - Avoids breaking [API](https://ddtrace.readthedocs.io/en/stable/versioning.html#interfaces) changes - Testing strategy adequately addresses listed risks - Newly-added code is easy to change - Release note makes sense to a user of the library - If necessary, author has acknowledged and discussed the performance implications of this PR as reported in the benchmarks PR comment - Backport labels are set in a manner that is consistent with the [release branch maintenance policy](https://ddtrace.readthedocs.io/en/latest/contributing.html#backporting)
…nGroup [backport 3.11] (#14269) Backport b74e3da from #14250 to 3.11. ## Description When an Appsec `BlockingException` is raised within a fastapi middleware, it can be aggregated and nested in a `BaseExceptionGroup` multiple levels deep. The behaviour occurs when using http middlewares. ## Checklist - [x] PR author has checked that all the criteria below are met - The PR description includes an overview of the change - The PR description articulates the motivation for the change - The change includes tests OR the PR description describes a testing strategy - The PR description notes risks associated with the change, if any - Newly-added code is easy to change - The change follows the [library release note guidelines](https://ddtrace.readthedocs.io/en/stable/releasenotes.html) - The change includes or references documentation updates if necessary - Backport labels are set (if [applicable](https://ddtrace.readthedocs.io/en/latest/contributing.html#backporting)) ## Reviewer Checklist - [x] Reviewer has checked that all the criteria below are met - Title is accurate - All changes are related to the pull request's stated goal - Avoids breaking [API](https://ddtrace.readthedocs.io/en/stable/versioning.html#interfaces) changes - Testing strategy adequately addresses listed risks - Newly-added code is easy to change - Release note makes sense to a user of the library - If necessary, author has acknowledged and discussed the performance implications of this PR as reported in the benchmarks PR comment - Backport labels are set in a manner that is consistent with the [release branch maintenance policy](https://ddtrace.readthedocs.io/en/latest/contributing.html#backporting) Co-authored-by: Christophe Papazian <christophe.papazian@datadoghq.com> Co-authored-by: Christophe Papazian <114495376+christophe-papazian@users.noreply.github.com>
…nGroup [backport 3.11] (#14269) Backport b74e3da from #14250 to 3.11. ## Description When an Appsec `BlockingException` is raised within a fastapi middleware, it can be aggregated and nested in a `BaseExceptionGroup` multiple levels deep. The behaviour occurs when using http middlewares. ## Checklist - [x] PR author has checked that all the criteria below are met - The PR description includes an overview of the change - The PR description articulates the motivation for the change - The change includes tests OR the PR description describes a testing strategy - The PR description notes risks associated with the change, if any - Newly-added code is easy to change - The change follows the [library release note guidelines](https://ddtrace.readthedocs.io/en/stable/releasenotes.html) - The change includes or references documentation updates if necessary - Backport labels are set (if [applicable](https://ddtrace.readthedocs.io/en/latest/contributing.html#backporting)) ## Reviewer Checklist - [x] Reviewer has checked that all the criteria below are met - Title is accurate - All changes are related to the pull request's stated goal - Avoids breaking [API](https://ddtrace.readthedocs.io/en/stable/versioning.html#interfaces) changes - Testing strategy adequately addresses listed risks - Newly-added code is easy to change - Release note makes sense to a user of the library - If necessary, author has acknowledged and discussed the performance implications of this PR as reported in the benchmarks PR comment - Backport labels are set in a manner that is consistent with the [release branch maintenance policy](https://ddtrace.readthedocs.io/en/latest/contributing.html#backporting) Co-authored-by: Christophe Papazian <christophe.papazian@datadoghq.com> Co-authored-by: Christophe Papazian <114495376+christophe-papazian@users.noreply.github.com>
Description
When an Appsec
BlockingExceptionis raised within a fastapi middleware, it can be aggregated and nested in aBaseExceptionGroupmultiple levels deep. The behaviour occurs when using http middlewares.Checklist
Reviewer Checklist