You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@impala.apache.org by "Joe McDonnell (Jira)" <ji...@apache.org> on 2022/08/19 03:47:00 UTC

[jira] [Created] (IMPALA-11511) Provide an option to build with compressed debug info

Joe McDonnell created IMPALA-11511:
--------------------------------------

             Summary: Provide an option to build with compressed debug info
                 Key: IMPALA-11511
                 URL: https://issues.apache.org/jira/browse/IMPALA-11511
             Project: IMPALA
          Issue Type: Improvement
          Components: Backend
    Affects Versions: Impala 4.2.0
            Reporter: Joe McDonnell


For builds with debug information, the debug information is often a large portion of the binary size. There is a feature that compresses the debug info using ZLIB via the "-gz" compilation flag. It makes a very large difference to the size of our binaries:
{noformat}
GCC 7.5:
debug: 726767520
debug with -gz: 325970776
release: 707911496
with with -gz: 301671026

GCC 10.4:
debug: 870378832
debug with -gz: 351442253
release: 974600536
release with -gz: 367938487{noformat}
The size reduction would be useful for developers, but support in other tools is mixed. gdb has support and seems to work fine. breakpad does not have support. However, it is easy to convert a binary with compressed debug symbols to one with normal debug symbols using objcopy:
{noformat}
objcopy --decompress-debug-sections [in_binary] [out_binary]{noformat}
Given a minidump, it is possible to run objcopy to decompress the debug symbols for the original binary, dump the breakpad symbols, and then process the minidump successfully. So, it should be possible to modify bin/dump_breakpad_symbols.py to do this automatically.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)