janestreet / janestreet/magic-trace

Exception raised while parsing perf output

Open
#257 4 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
OCaml
Stars
6.3k
Forks
209
PR merge metrics
No merged PRs in 30d

Description

magic-trace failed to parse perf output with the following errors:

```
(monitor.ml.Error
("BUG: exception raised while parsing perf output. Please report this to https://github.com/janestreet/magic-trace/issues/"
(exn Not_found)
(perf_output
("1907478/1909463 457407.880965552: 1 branches:uH: int 564aa58813d4 Builtins_RunMicrotasks+0x554 (/usr/local/bin/workload) => 564aa584fa00 Builtins_Call_ReceiverIsNotNullOrUndefined+0x0 (/usr/local/bin/workload)")))
("Raised at Base__Error.raise in file \"src/error.ml\" (inlined), line 9, characters 14-30"
"Called from Base__Error.raise_s in file \"src/error.ml\", line 10, characters 19-40"
"Called from Async_kernel__Pipe.map.(fun) in file \"src/pipe.ml\", line 1042, characters 65-70"
"Called from Async_kernel__Job_queue.run_jobs in file \"src/job_queue.ml\", line 167, characters 6-47"
"Caught by monitor Monitor.protect"))
```

I have:

```
perf --version
perf version 5.15.59
```

It looks to me that `int` flag is not recognized properly by magic-trace

Contributor guide

Open the contributing guide

Research direction

Reproduce the failure using the supplied perf 5.15.59 output, then locate magic-trace's perf-output parsing entry point and inspect handling of the `int` flag. Confirm the parser accepts this sample without raising `Not_found`, and add or update a regression test if the repository provides a suitable parser test location.

Written by the indexing model from the issue text.

Assessment

Tech stack
ocaml
Domain
performance, tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.