Conversation
|
Another idea that's probably worth implementing in addition to this: only hold soft (not weak) references to call tree roots. This doesn't fix the root cause but mitigates the severeness of the symptom. Basically another safety net. |
Good idea! I had a thought in the same direction with regard to the One more thought I have is to connect the I will do some more additional cosmetic recycling changes to the recycling flows. |
|
Now that I started implementing the cache, I saw that it we would need to allocate a |
Codecov Report
@@ Coverage Diff @@
## master #1592 +/- ##
============================================
- Coverage 66.68% 58.72% -7.97%
+ Complexity 3021 92 -2929
============================================
Files 282 399 +117
Lines 14165 17864 +3699
Branches 1922 2475 +553
============================================
+ Hits 9446 10490 +1044
- Misses 4065 6649 +2584
- Partials 654 725 +71
Continue to review full report at Codecov.
|
SylvainJuge
left a comment
There was a problem hiding this comment.
[question] would it make sense to have all tree nodes keep a reference to their respective pools (root nodes and others) so that recycling would always be done to the right pool ?
...agent-plugins/apm-profiling-plugin/src/main/java/co/elastic/apm/agent/profiler/CallTree.java
Show resolved
Hide resolved
...agent-plugins/apm-profiling-plugin/src/main/java/co/elastic/apm/agent/profiler/CallTree.java
Outdated
Show resolved
Hide resolved
9f92605 to
c81c3d1
Compare
caba3d6 to
8f5eab6
Compare

What does this PR do?
Initial attempt to fix a sampling profiler's memory leak reported at the forum.