Make local development artifact builds on Android download full build symbols
Categories
(Firefox Build System :: General, enhancement)
Tracking
(firefox68 fixed)
Tracking | Status | |
---|---|---|
firefox68 | --- | fixed |
People
(Reporter: nalexander, Assigned: nalexander)
References
(Blocks 2 open bugs)
Details
Attachments
(4 files)
We produce two types of build symbol archives in automation:
- "crashreporter-symbols.zip" contains Breakpad-format .sym files
- "crashreporter-symbols-full.zip" contains Breakpad-format .sym files and compressed ELF debug symbol .dbg.gz files
The --enable-artifact-build-symbols
flag from Bug 1305502 downloads only "crashreporter-symbols.zip".
The Android Studio version of lldb, currently 7.0.0, doesn't support Breakpad-format .sym files. It does support (uncompressed) ELF debug symbols. (Note that gdb isn't supported on Android and hasn't been for some time.)
This ticket tracks making --enable-artifact-build-symbols
download the full symbols locally, to be useful for debugging Android builds with lldb locally. The existing behaviour will remain in automation, 'cuz it's sufficient for symbolicating minidumps.
Comment 1•5 years ago
|
||
n.b., in bug 1466537 we disabled uploading of the "crashreporter-symbols-full.zip" artifact from many builds because they're huge and weren't actually being used most of the time. (We don't upload symbols to the symbol server for anything but Nightly builds, and we don't use the full.zip in automation at all.)
Assignee | ||
Comment 2•5 years ago
|
||
It's not helpful to have a DEBUG log level, 'cuz the -v flag to
./mach artifact install
doesn't turn on DEBUG logging.
Assignee | ||
Comment 3•5 years ago
|
||
We produce two types of build symbol archives in automation:
- "crashreporter-symbols.zip" contains Breakpad-format .sym files
- "crashreporter-symbols-full.zip" contains Breakpad-format .sym files
and compressed ELF debug symbol .dbg.gz files
Right now, --enable-artifact-build-symbols
from Bug 1305502
downloads only "crashreporter-symbols.zip".
The Android Studio version of lldb, currently 7.0.0, doesn't support
Breakpad-format .sym files. It does support (uncompressed) ELF debug
symbols. (Note that gdb isn't supported on Android and hasn't been for
some time.)
This makes --enable-artifact-build-symbols
download the full
symbols locally, to be useful for debugging Android builds with lldb
locally. It retains The existing behaviour in automation, 'cuz it's
sufficient for symbolicating minidumps.
Depends on D19090
Assignee | ||
Comment 4•5 years ago
|
||
Depends on D19091
Assignee | ||
Comment 5•5 years ago
|
||
(In reply to Ted Mielczarek [:ted] [:ted.mielczarek] from comment #1)
n.b., in bug 1466537 we disabled uploading of the "crashreporter-symbols-full.zip" artifact from many builds because they're huge and weren't actually being used most of the time. (We don't upload symbols to the symbol server for anything but Nightly builds, and we don't use the full.zip in automation at all.)
ted: perhaps take this and see if you're concerned about it?
Looks like we have lots of Android builds with full crashreporter symbols: https://searchfox.org/mozilla-central/source/taskcluster/ci/build/android.yml
Artifact builds do pull from mozilla-inbound, so it's possible this won't work... but that's fine, I'd be happy to make this "soft require" a mozilla-central base.
Assignee | ||
Updated•5 years ago
|
Assignee | ||
Comment 6•5 years ago
|
||
With this patch and a little Android Studio configuration, I get symbolicated native debugging of artifact builds locally. Unfortunately, the artifact bits are very slow ('cuz the uncompressed ELF debug symbols are 1.2G). But it's transparent and really pleasant to work with when you need it!
Assignee | ||
Updated•5 years ago
|
Comment 7•5 years ago
|
||
(In reply to Nick Alexander :nalexander [he/him] from comment #5)
ted: perhaps take this and see if you're concerned about it?
Looks like we have lots of Android builds with full crashreporter symbols: https://searchfox.org/mozilla-central/source/taskcluster/ci/build/android.yml
Artifact builds do pull from mozilla-inbound, so it's possible this won't work... but that's fine, I'd be happy to make this "soft require" a mozilla-central base.
If this works for you that's fine. I just wanted you to be aware of the possible complications there.
Comment 8•5 years ago
|
||
There are some r+ patches which didn't land and no activity in this bug for 2 weeks.
:nalexander, could you have a look please?
Updated•5 years ago
|
Assignee | ||
Comment 9•5 years ago
|
||
Depends on D19092
Assignee | ||
Updated•5 years ago
|
Comment 10•5 years ago
|
||
Pushed by nalexander@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/e44091ef8d3f Pre: Log more with `./mach artifact install -v`. r=froydnj https://hg.mozilla.org/integration/autoland/rev/bcc2aef70db3 Make local development artifact builds on Android download full build symbols. r=froydnj https://hg.mozilla.org/integration/autoland/rev/4ebb324c0d95 Post: Make $topobjdir/.lldbinit reference full build symbols on Android. r=froydnj https://hg.mozilla.org/integration/autoland/rev/360e565d9175 Post: Only package artifact symbols in automation. r=glandium
Comment 11•5 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/e44091ef8d3f
https://hg.mozilla.org/mozilla-central/rev/bcc2aef70db3
https://hg.mozilla.org/mozilla-central/rev/4ebb324c0d95
https://hg.mozilla.org/mozilla-central/rev/360e565d9175
Description
•