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

materialized: fix backtraces on macOS #3398

Merged
merged 1 commit into from
Jun 18, 2020

Conversation

benesch
Copy link
Member

@benesch benesch commented Jun 17, 2020

Switch over to the new Gimli-based backtrace symbolicator. Gimli is a
pure-Rust reimplementation of libbacktrace that will soon be the default
backtrace implementation in the Rust standard library 0. Switching to
it now means we can help shake out problems, like 1, before it ships
in the standard library, where fixing problems will require a full six
week release cycle.

This switch has the side effect of fixing backtraces on macOS, which
seem to be broken at the moment because the backtrace crate is picking
libbacktrace over coresymbolication. There isn't a good way of fixing
that because Cargo doesn't support per-platform features 2; using
neither libbacktrace or coresymbolicator is a kind of stupid but
effective way of sidestepping the problem.


This change is Reviewable

Switch over to the new Gimli-based backtrace symbolicator. Gimli is a
pure-Rust reimplementation of libbacktrace that will soon be the default
backtrace implementation in the Rust standard library [0]. Switching to
it now means we can help shake out problems, like [1], before it ships
in the standard library, where fixing problems will require a full six
week release cycle.

This switch has the side effect of fixing backtraces on macOS, which
seem to be broken at the moment because the backtrace crate is picking
libbacktrace over coresymbolication. There isn't a good way of fixing
that because Cargo doesn't support per-platform features [2]; using
neither libbacktrace or coresymbolicator is a kind of stupid but
effective way of sidestepping the problem.

[0]: rust-lang/rust#73441
[1]: rust-lang/backtrace-rs#342
[2]: rust-lang/cargo#1197
@benesch benesch merged commit 6aafd50 into MaterializeInc:master Jun 18, 2020
@benesch benesch deleted the macos-backtraces branch June 18, 2020 15:03
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.

1 participant