Hi,
Following up on JavaScript/TypeScript analysis does not complete in Bitbucket Pipeline. I was told the fix should already be included in the release we are running, so I’m opening a new topic as requested.
Must-share information
- Versions:
- SonarQube Server Enterprise Edition 2026.5.1 (build 132435). Also reproduced on 2026.5.2 (build 132813).
- SonarScanner CLI 8.1.0.6389
- JavaScript/TypeScript plugin 13.9.0.44793 (on 2026.5.1)
- Embedded Node.js; memory: OS 31804 MB, Node.js 4288 MB
- Deployment: self-hosted (zip) on RHEL 9. Analysis runs in GitLab CI (Docker executor,
sonar-scanner-cliimage). - What we’re trying to achieve: a normal analysis time with JS/TS security analysis enabled.
- What we’ve tried so far: upgrading from 2026.5.1 to 2026.5.2, excluding the entry-point files, deactivating the
jssecurity/tssecurityrules, andsonar.jasmin.internal.js.ts.disabled=true. Only the last two make the analysis fast, and both remove all JS/TS taint analysis. Details and timings below.
Problem
On a React + Node.js/Express project (~650 JS/TS files), JsSecuritySensorV2 [jasmin] takes 11–15 minutes. The rest of the analysis takes about 2 minutes. Debug logs show nearly all of the time is spent on the two application entry points:
server.js(Express entry point): ~374 s on 2026.5.1, ~546 s on 2026.5.2src/index.tsx(React entry point): ~295 s, right atReact render simulation time limit is set to 300 seconds- Remaining ~489 files: ~8 s in total
Relevant log excerpt (2026.5.1, -Dsonar.verbose=true; abridged, ... and <- comments added by me):
INFO Sensor JsSecuritySensorV2 [jasmin]
INFO React render simulation time limit is set to 300 seconds
INFO 491 file(s) will be analysed by SonarJasmin.
DEBUG Analyzing .../server.js (11/491)
DEBUG Analyzing .../server/app.js (12/491) <- ~6 min later
...
DEBUG Analyzing .../src/index.tsx (316/491)
DEBUG Analyzing .../src/layouts/Container/Container.tsx (317/491) <- ~295 s later
INFO Sensor JsSecuritySensorV2 [jasmin] (done) | time=677191ms
What we’ve tried
- Default profile (Sonar way comprehensive): ~16 min in total, ~15 min of it in JsSecuritySensorV2.
- Upgrade to 2026.5.2: same behaviour. ~546 s on
server.js, then it stalls onsrc/index.tsx. - Excluding
server.js+src/index.tsx: ~5 min. The cost moves to the next file that loads the whole app (server/app.js, thenserver/routes/index.js). - Profile with
jssecurity/tssecurityrules deactivated: 2:25 in total, JsSecuritySensorV2 60 ms. sonar.jasmin.internal.js.ts.disabled=true: 2:17 in total, JsSecuritySensorV2 74 ms, but all ~300 taint issues disappear.
The last option works as a workaround, but we lose all JS/TS taint analysis. On Server it does not fall back to a legacy engine; the log says Analysis of JS/TS security rules is disabled.
Questions
- Which SonarQube Server version / JS plugin version contains the fix mentioned in thread 186802?
- Is this a different issue, given that it still happens on 2026.5.1 and 2026.5.2?
- Is there a supported way to limit the analysis time per file (e.g. the React render simulation limit) without disabling taint analysis entirely?
We can share a full debug log privately (the source code is a private company repository).
Thanks!