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

Flatten known data structures when computing group SHAs #1356

Open
pyricau opened this issue May 21, 2019 · 1 comment
Open

Flatten known data structures when computing group SHAs #1356

pyricau opened this issue May 21, 2019 · 1 comment

Comments

@pyricau
Copy link
Member

@pyricau pyricau commented May 21, 2019

When the common part of a leaktrace uses data structures that rely on linked lists (e.g. LinkedHashMap) then the leak trace has a different size for every leak, despite being the same, which prevents good grouping.

There should be a way to transform the subset of the leaktrace that forms the group into a synthetic version that always ends up being the same. We'll need this for hashing but also displaying the group. The real leak trace should display as before when you dive in.

Probably shouldn't be an API at first, we can start with a few JDK data structures (LinkedHashMap, LinkedHashSet, LinkedList)

@pyricau pyricau modified the milestones: 2.0 Next Release, 2.0-alpha-2 May 21, 2019
@pyricau pyricau modified the milestones: 2.0-alpha-3, 2.0 Next Release Jul 4, 2019
@pyricau pyricau modified the milestones: 2.0-beta-1, 2.0 Next Release Jul 26, 2019
@pyricau pyricau modified the milestones: 2.0-beta-2, 2.0 Next Release Aug 2, 2019
@pyricau pyricau removed this from the 2.0 Next Release milestone Aug 22, 2019
@pyricau
Copy link
Member Author

@pyricau pyricau commented Nov 13, 2019

We don't necessarily need to flatten for the grouping, we can sometimes replace one line with another.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
1 participant
You can’t perform that action at this time.