Joe McDonnell has uploaded this change for review. ( http://gerrit.cloudera.org:8080/21720
Change subject: IMPALA-12165: Add option for split debug information (-gsplit-dwarf) ...................................................................... IMPALA-12165: Add option for split debug information (-gsplit-dwarf) This adds the IMPALA_SPLIT_DEBUG_INFO environment variable, which controls whether the build uses -gsplit-dwarf. This option puts debug information in a separate .dwo file for each C++ file. Executables contain metadata pointing to those .dwo files and don't need to include the debug information themselves. This reduces link time and disk space usage. The default for IMPALA_SPLIT_DEBUG_INFO is off as this is intended to be an opt-in option for developers. For a debug build with compressed debug information, it cuts disk space usage roughly in half: Without backend tests (measuring "du -sh be"): Regular: 5.6GB Split debuginfo: 2.7GB With backend tests: Regular: 22GB Split debuginfo: 12GB This only works for the debug information from Impala itself. The debug information from dependencies from the toolchain are included in each executable. Split debug information has been around for a long time, so tools like GDB work. Resolving minidumps works properly. Testing: - Ran builds locally (with GCC and Clang) - Attached to Impala with GDB and verified that symbols worked - Resolved a minidump and checked the output Change-Id: I3bbe700279a5dc3fde338fdfa0ea355d3570c9d0 --- M be/CMakeLists.txt M bin/impala-config.sh 2 files changed, 17 insertions(+), 0 deletions(-) git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/20/21720/1 -- To view, visit http://gerrit.cloudera.org:8080/21720 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I3bbe700279a5dc3fde338fdfa0ea355d3570c9d0 Gerrit-Change-Number: 21720 Gerrit-PatchSet: 1 Gerrit-Owner: Joe McDonnell <[email protected]>
