[fix](jvm)fix jvm metrics memory leak.(#44311)#44218
Merged
morningman merged 2 commits intoapache:branch-3.0from Nov 19, 2024
Merged
[fix](jvm)fix jvm metrics memory leak.(#44311)#44218morningman merged 2 commits intoapache:branch-3.0from
morningman merged 2 commits intoapache:branch-3.0from
Conversation
|
Thank you for your contribution to Apache Doris. Please clearly describe your PR:
|
Contributor
Author
|
run buildall |
Contributor
|
clang-tidy review says "All clean, LGTM! 👍" |
cambyzju
reviewed
Nov 19, 2024
| jvm_metrics->jvm_thread_count->set_value(threadCount < 0 ? 0 : threadCount); | ||
|
|
||
| for (int i = 0; i < threadCount; i++) { | ||
| JNI_CALL_METHOD_CHECK_EXCEPTION(jobject, threadInfo, env, |
Contributor
There was a problem hiding this comment.
Why not fix branch master at first, then auto pick to 3.0 and 2.1 ?
Contributor
There was a problem hiding this comment.
Why only 3.0 have this problem? It seems line 488 is the same in branch master & 2.1
Contributor
There was a problem hiding this comment.
will pick to all branches.
Contributor
Author
|
run buildall |
Contributor
|
clang-tidy review says "All clean, LGTM! 👍" |
hubgeter
added a commit
to hubgeter/doris
that referenced
this pull request
Nov 20, 2024
### What problem does this PR solve? fix jvm metrics memory leak.before pr apache#42507 when you set `enable_jvm_monitor=true` in be.conf, you can find that be jvm memory is slowly growing. By analyzing the hprof file, we can find that there are a large number of `java.lang.management.ThreadInfo` objects. The specific cause of the memory leak is: jni does not manually delete the local reference after getting the object from the array, resulting in the object not being GC.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What problem does this PR solve?
fix jvm metrics memory leak.before pr #42507
when you set
enable_jvm_monitor=truein be.conf, you can find that be jvm memory is slowly growing.By analyzing the hprof file, we can find that there are a large number of
java.lang.management.ThreadInfoobjects.The specific cause of the memory leak is: jni does not manually delete the local reference after getting the object from the array, resulting in the object not being GC.
Issue Number: close #xxx
Related PR: #44311
Problem Summary:
Release note
None
Check List (For Author)
Test
just fix memory leak no logic has been changed
Behavior changed:
Does this need documentation?
Check List (For Reviewer who merge this PR)