Skip to content

Demangle already symbolized files that have a system function#6217

Merged
gnurizen merged 2 commits intomainfrom
demangle
Feb 25, 2026
Merged

Demangle already symbolized files that have a system function#6217
gnurizen merged 2 commits intomainfrom
demangle

Conversation

@gnurizen
Copy link
Contributor

No description provided.

@alwaysmeticulous
Copy link

alwaysmeticulous bot commented Feb 25, 2026

✅ Meticulous spotted 0 visual differences across 407 screens tested: view results.

Meticulous evaluated ~4 hours of user flows against your PR.

Expected differences? Click here. Last updated for commit a6211f9. This comment will update as new commits are pushed.

@gnurizen gnurizen marked this pull request as ready for review February 25, 2026 22:08
@gnurizen gnurizen requested a review from a team as a code owner February 25, 2026 22:08
@gnurizen gnurizen requested review from brancz, Copilot and metalmatze and removed request for brancz February 25, 2026 22:08
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR adds demangling support for already-symbolized profiles that contain mangled C++ or Rust function names. The implementation threads a demangler through the query path to demangle function names when decoding encoded location data.

Changes:

  • Added demangler parameter to DecodeInto function to demangle function names during profile decoding
  • Integrated demangler into the parcacol Querier to enable demangling at query time
  • Updated production code to initialize and pass a default demangler to the Querier
  • Updated all test files to pass nil for the demangler parameter

Reviewed changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated no comments.

Show a summary per file
File Description
pkg/profile/decode.go Added demangler parameter to DecodeInto and implemented demangling of function names
pkg/profile/encode_test.go Updated DecodeInto call to pass nil demangler
pkg/parcacol/querier.go Added demangler field to Querier struct and threaded it through to DecodeInto calls
pkg/parca/parca.go Added import for demangle package and initialized default demangler for production use
pkg/parca/parca_test.go Updated test NewQuerier calls to pass nil demangler
pkg/query/sources_test.go Updated test NewQuerier call to pass nil demangler
pkg/query/query_test.go Updated test NewQuerier calls to pass nil demangler
pkg/query/columnquery_test.go Updated test NewQuerier calls to pass nil demangler

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@gnurizen gnurizen merged commit ee9a8b7 into main Feb 25, 2026
35 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants