redhat-developer / redhat-developer/vscode-java

Extension Doesn't work if Flight Recorder is Enabled

Open
#1,407 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug ls-error/crash
Dominant language
TypeScript
Stars
2.3k
Forks
546
Avg merge
20h 1m
Merged PRs (30d)
11

Description

With JFR enabled, the extension does not work at all.

Environment
  • Operating System: Mac OS
  • JDK version: OpenJDK 14
  • Visual Studio Code version: 1.44.2
  • Java extension version: 0.60.0
Steps To Reproduce
  1. Enable JFR in User settings with the following setting:
"java.jdt.ls.vmargs": "-XX:StartFlightRecording=settings=default,dumponexit=true,filename=/Users/bruno/jfrdumps -Xms512m",
  1. Restart extension

  2. Try to work on any Java project

Current Result

Nothing works.

Expected Result

Should work same way as without JFR.

Additional Informations

The language server JVM is up and running and things are happening inside of it. When you quit VS Code or terminate the JVM, a JFR dump will be produced and will highlight thousands of Errors/Exceptions.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the failure with the java.jdt.ls.vmargs setting and JFR enabled, then compare the language server JVM behavior with and without JFR. Trace why Java project operations stop working and verify that the extension behaves normally while still producing the requested JFR dump.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, typescript, vscode
Domain
developer-experience, devtools
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.