Skip to content

chore(tracing): remove async storage from mongo plugins #5812

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

Merged
merged 29 commits into from
Jul 31, 2025

Conversation

wconti27
Copy link
Contributor

@wconti27 wconti27 commented Jun 3, 2025

What does this PR do?

Make mongo plugins Node 24 compatible

Motivation

Plugin Checklist

Additional Notes

@wconti27 wconti27 requested review from a team as code owners June 3, 2025 14:47
Copy link

github-actions bot commented Jun 3, 2025

Overall package size

Self size: 11.13 MB
Deduped: 110.71 MB
No deduping: 111.1 MB

Dependency sizes | name | version | self size | total size | |------|---------|-----------|------------| | @datadog/libdatadog | 0.7.0 | 35.02 MB | 35.02 MB | | @datadog/native-appsec | 10.0.1 | 20.3 MB | 20.3 MB | | @datadog/native-iast-taint-tracking | 4.0.0 | 11.72 MB | 11.73 MB | | @datadog/pprof | 5.9.0 | 9.77 MB | 10.14 MB | | @opentelemetry/core | 1.30.1 | 908.66 kB | 7.16 MB | | protobufjs | 7.5.3 | 2.95 MB | 5.6 MB | | @datadog/wasm-js-rewriter | 4.0.1 | 2.85 MB | 3.58 MB | | @datadog/native-metrics | 3.1.1 | 1.02 MB | 1.43 MB | | @opentelemetry/api | 1.8.0 | 1.21 MB | 1.21 MB | | jsonpath-plus | 10.3.0 | 617.18 kB | 1.08 MB | | import-in-the-middle | 1.14.2 | 122.36 kB | 850.93 kB | | lru-cache | 10.4.3 | 804.3 kB | 804.3 kB | | source-map | 0.7.4 | 226 kB | 226 kB | | opentracing | 0.14.7 | 194.81 kB | 194.81 kB | | pprof-format | 2.1.0 | 111.69 kB | 111.69 kB | | @datadog/sketches-js | 2.1.1 | 109.9 kB | 109.9 kB | | lodash.sortby | 4.7.0 | 75.76 kB | 75.76 kB | | ignore | 7.0.5 | 63.38 kB | 63.38 kB | | istanbul-lib-coverage | 3.2.2 | 34.37 kB | 34.37 kB | | rfdc | 1.4.1 | 27.15 kB | 27.15 kB | | dc-polyfill | 0.1.10 | 26.73 kB | 26.73 kB | | @isaacs/ttlcache | 1.4.1 | 25.2 kB | 25.2 kB | | tlhunter-sorted-set | 0.1.0 | 24.94 kB | 24.94 kB | | shell-quote | 1.8.3 | 23.74 kB | 23.74 kB | | limiter | 1.1.5 | 23.17 kB | 23.17 kB | | retry | 0.13.1 | 18.85 kB | 18.85 kB | | semifies | 1.0.0 | 15.84 kB | 15.84 kB | | jest-docblock | 29.7.0 | 8.99 kB | 12.76 kB | | crypto-randomuuid | 1.0.0 | 11.18 kB | 11.18 kB | | ttl-set | 1.0.0 | 4.61 kB | 9.69 kB | | mutexify | 1.4.0 | 5.71 kB | 8.74 kB | | path-to-regexp | 0.1.12 | 6.6 kB | 6.6 kB | | koalas | 1.0.2 | 6.47 kB | 6.47 kB | | module-details-from-path | 1.0.4 | 3.96 kB | 3.96 kB |

🤖 This report was automatically generated by heaviest-objects-in-the-universe

Copy link

codecov bot commented Jun 3, 2025

Codecov Report

❌ Patch coverage is 89.28571% with 3 lines in your changes missing coverage. Please review.
✅ Project coverage is 83.12%. Comparing base (3e23304) to head (cce49fe).
⚠️ Report is 8 commits behind head on master.

Files with missing lines Patch % Lines
packages/datadog-instrumentations/src/mongoose.js 94.11% 1 Missing ⚠️
packages/datadog-plugin-mongoose/src/index.js 87.50% 1 Missing ⚠️
packages/dd-trace/src/plugins/index.js 0.00% 1 Missing ⚠️
Additional details and impacted files
@@           Coverage Diff           @@
##           master    #5812   +/-   ##
=======================================
  Coverage   83.12%   83.12%           
=======================================
  Files         476      477    +1     
  Lines       19719    19727    +8     
=======================================
+ Hits        16392    16399    +7     
- Misses       3327     3328    +1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@wconti27 wconti27 self-assigned this Jun 3, 2025
@pr-commenter
Copy link

pr-commenter bot commented Jun 3, 2025

Benchmarks

Benchmark execution time: 2025-07-30 19:14:29

Comparing candidate commit cce49fe in PR branch conti/remove-async-storage-mongo with baseline commit 3e23304 in branch master.

Found 0 performance improvements and 0 performance regressions! Performance is the same for 1262 metrics, 61 unstable metrics.

@datadog-datadog-prod-us1
Copy link

datadog-datadog-prod-us1 bot commented Jun 3, 2025

Datadog Report

Branch report: conti/remove-async-storage-mongo
Commit report: 080e076
Test service: dd-trace-js-integration-tests

✅ 0 Failed, 1254 Passed, 0 Skipped, 17m 19.36s Total Time

@BridgeAR BridgeAR marked this pull request as draft June 4, 2025 11:47
@tlhunter tlhunter mentioned this pull request Jul 3, 2025
61 tasks
@wconti27 wconti27 marked this pull request as ready for review July 9, 2025 15:41
@BridgeAR
Copy link
Collaborator

@wconti27 there seem to still be a few related test failures :)

https://github.com/DataDog/dd-trace-js/actions/runs/16173889662/job/45654105379?pr=5812

@wconti27 wconti27 requested a review from rochdev July 15, 2025 00:19
Copy link
Collaborator

@BridgeAR BridgeAR left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The mongoose changes are difficult to review for me. Would you mind a review call?
The other parts are LGTM with my suggestion.

@BridgeAR BridgeAR marked this pull request as draft July 16, 2025 09:29
@wconti27 wconti27 marked this pull request as ready for review July 22, 2025 14:06
@wconti27 wconti27 requested a review from tlhunter July 22, 2025 14:06

// Ensure the current store is preserved across the
// internal callback channel used by the instrumentation.
// We ignore the `ctx` argument and just return the active store so that
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wouldn't that be equivalent to doing nothing since the active store will already be active by definition?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removed this. I added the subscribe and empty handler for the new channel to the mongodb plugin, so that we don't need to add a mongoose plugin.

@rochdev rochdev mentioned this pull request Jul 25, 2025
7 tasks
@wconti27 wconti27 requested a review from rochdev July 28, 2025 14:40
@datadog-datadog-prod-us1
Copy link

datadog-datadog-prod-us1 bot commented Jul 30, 2025

⚠️ Tests

⚠️ Warnings

❄️ 1 New flaky test detected

cypress@10.2.0 commonJS flaky test retries retries flaky tests from integration-tests/cypress/cypress.spec.js (Datadog)
expected +0 to equal 1

ℹ️ Info

🧪 All tests passed

This comment will be updated automatically if new data arrives.
🔗 Commit SHA: cce49fe | Docs | Was this helpful? Give us feedback!

@wconti27 wconti27 merged commit a7d6109 into master Jul 31, 2025
723 of 725 checks passed
@wconti27 wconti27 deleted the conti/remove-async-storage-mongo branch July 31, 2025 13:52
dd-octo-sts bot pushed a commit that referenced this pull request Aug 1, 2025
@dd-octo-sts dd-octo-sts bot mentioned this pull request Aug 1, 2025
BridgeAR pushed a commit that referenced this pull request Aug 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants