backup and restore staticVariableClassMap when processing heap dumps #657
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 does this PR do?
When modifying the static variables for heap dump processing it turns out that the staticVariablesClassMap holds shallow copies of the ApexVariableContainers. What was happening is that these were getting modified as part of heap dump processing and not getting restored. The way this manifested itself was after stepping off checkpoint line one of static variable collections was showing all of the fields under "this". This was because of the variablesRef created when displaying the heap dump augmented variables had the same variablesRef value as "this" after things were restored and because the staticVariablesClassMap wasn't backed up with the rest of the stuff.
What issues does this PR fix or reference?
@W-5490706@