Skip to content

Capture unresolved backtraces on traps - #4193

Merged
alexcrichton merged 1 commit into
bytecodealliance:mainfrom
alexcrichton:faster-tests
May 31, 2022
Merged

Capture unresolved backtraces on traps#4193
alexcrichton merged 1 commit into
bytecodealliance:mainfrom
alexcrichton:faster-tests

Conversation

@alexcrichton

Copy link
Copy Markdown
Member

I was running tests recently and was surprised that the --test all
test was taking more than a minute to run when I didn't recall it ever
taking more than a minute historically. A bisection pointed out #4183 as
the cause and after re-reviewing I realized I forgot that we capture
unresolved backtraces by default (and don't actually resolve them
anywhere yet but that's a problem for another day) rather than resolved
backtraces. This means that it's intended that we use
Backtrace::new_unresolved instead of Backtrace::new in the
traphandlers crate.

The reason that tests were running so slowly is that the tests which
deal with deep stacks (e.g. stack overflow) would take forever in
testing as the Rust-based decoding of DWARF information is egregiously
slow in unoptimized mode. I did discover independently that optimizing
these dependencies makes the tests ~6x faster, but that's irrelevant if
we're not symbolicating in the first place.

I was running tests recently and was surprised that the `--test all`
test was taking more than a minute to run when I didn't recall it ever
taking more than a minute historically. A bisection pointed out bytecodealliance#4183 as
the cause and after re-reviewing I realized I forgot that we capture
unresolved backtraces by default (and don't actually resolve them
anywhere yet but that's a problem for another day) rather than resolved
backtraces. This means that it's intended that we use
`Backtrace::new_unresolved` instead of `Backtrace::new` in the
traphandlers crate.

The reason that tests were running so slowly is that the tests which
deal with deep stacks (e.g. stack overflow) would take forever in
testing as the Rust-based decoding of DWARF information is egregiously
slow in unoptimized mode. I did discover independently that optimizing
these dependencies makes the tests ~6x faster, but that's irrelevant if
we're not symbolicating in the first place.
@alexcrichton
alexcrichton requested a review from pchickey May 27, 2022 20:29
@alexcrichton
alexcrichton merged commit 7d36395 into bytecodealliance:main May 31, 2022
@alexcrichton
alexcrichton deleted the faster-tests branch May 31, 2022 14:56
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.

2 participants