Skip to content

Commit ec090bb

Browse files
committed
fix(test): defer redis-5 require so DC subscriber registers before connect
node-redis eagerly creates native TracingChannels on require(), and the DC subscriber is deferred via Promise.resolve().then(). Moving the require inside run() after a microtick ensures the subscriber is registered before the connect event fires.
1 parent 5e6ea30 commit ec090bb

1 file changed

Lines changed: 5 additions & 2 deletions

File tree

dev-packages/node-integration-tests/suites/tracing/redis-dc/scenario-redis-5.js

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,12 @@ Sentry.init({
1212
// Stop the process from exiting before the transaction is sent
1313
setInterval(() => {}, 1000);
1414

15-
const { createClient } = require('redis-5');
16-
1715
async function run() {
16+
// Yield a microtick so the DC subscriber (deferred via Promise.resolve().then)
17+
// is registered before node-redis eagerly creates its native TracingChannels on require().
18+
await Promise.resolve();
19+
20+
const { createClient } = require('redis-5');
1821
const redisClient = await createClient({ socket: { host: '127.0.0.1', port: 6379 } }).connect();
1922

2023
await Sentry.startSpan(

0 commit comments

Comments
 (0)