Skip to content
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

JFR can invoke VM.setJFRRecordingFileName() before VM.startJFR() #21070

Merged
merged 1 commit into from
Feb 6, 2025

Conversation

JasonFengJ9
Copy link
Member

@JasonFengJ9 JasonFengJ9 commented Feb 5, 2025

JFR can invoke VM.setJFRRecordingFileName() before VM.startJFR()

Allow VM.setJFRRecordingFileName() to be invoked before VM.startJFR();
Ignore the changing of the recording filename within the commands JFR.dump and JFR.stop.

Related to

Signed-off-by: Jason Feng [email protected]

Allow VM.setJFRRecordingFileName() to be invoked before VM.startJFR();
Ignore the recording filename changing within the commands JFR.dump and
JFR.stop commands.

Signed-off-by: Jason Feng <[email protected]>
@JasonFengJ9 JasonFengJ9 changed the title JFR need invoke startJFR() first before setJFRRecordingFileName() JFR can invoke VM.setJFRRecordingFileName() before VM.startJFR() Feb 5, 2025
@tajila
Copy link
Contributor

tajila commented Feb 5, 2025

jenkins test sanity.functional alinux64 jdk21

@JasonFengJ9
Copy link
Member Author

16:44:18  === Output from failing command(s) repeated here ===
16:44:18  * For target support_demos_classes_jfc_CodePointIM__the.BUILD_DEMO_CodePointIM_batch:
16:44:18  [stderr] java.util.concurrent.RejectedExecutionException: Task java.util.concurrent.FutureTask@69cccf93[Not completed, task = javacserver.server.CompilerThreadPool$$Lambda/0x0000000000000000@7170e6c5] rejected from java.util.concurrent.ThreadPoolExecutor@524cf1d4[Terminated, pool size = 0, active threads = 0, queued tasks = 0, completed tasks = 10]
16:44:18  [stderr] 	at java.base/java.util.concurrent.ThreadPoolExecutor$AbortPolicy.rejectedExecution(ThreadPoolExecutor.java:2081)
16:44:18  [stderr] 	at java.base/java.util.concurrent.ThreadPoolExecutor.reject(ThreadPoolExecutor.java:841)
16:44:18  [stderr] 	at java.base/java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:1376)
16:44:18  [stderr] 	at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:145)
16:44:18  [stderr] 	at javacserver.server.CompilerThreadPool.dispatchCompilation(CompilerThreadPool.java:49)
16:44:18  [stderr] 	at javacserver.server.Server.handleRequest(Server.java:211)
16:44:18  [stderr] 	at javacserver.server.Server.lambda$start$1(Server.java:173)
16:44:18  [stderr] 	at java.base/java.lang.Thread.run(Thread.java:1595)

A known issue

@tajila
Copy link
Contributor

tajila commented Feb 6, 2025

jenkins test sanity.functional alinux64 jdk21

@tajila
Copy link
Contributor

tajila commented Feb 6, 2025

jenkins test sanity.functional xlinux jdk11

@tajila tajila merged commit 516d0f5 into eclipse-openj9:master Feb 6, 2025
7 checks passed
Comment on lines +1133 to +1136
if ((defaultFileNameLen != strlen(jfrFileName))
|| (0 != strncmp(DEFAULT_JFR_FILE_NAME, jfrFileName, defaultFileNameLen))
) {
PORT_ACCESS_FROM_JAVAVM(vm);
Copy link
Contributor

Choose a reason for hiding this comment

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

It isn't new with this change, but I notice that this leaks the old filename if called with an equal name.

Copy link
Contributor

Choose a reason for hiding this comment

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

Ill address this

@JasonFengJ9 JasonFengJ9 deleted the jfrjcmd branch February 7, 2025 04:45
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.

3 participants