ATO-48, ATO-36, ATO-35, Step to consistent exception handling in AliRoot and optional...
authormivanov <marian.ivanov@cern.ch>
Sun, 1 Jun 2014 22:45:09 +0000 (00:45 +0200)
committermivanov <marian.ivanov@cern.ch>
Sun, 1 Jun 2014 22:45:09 +0000 (00:45 +0200)
commitbe0d1a8d1817c90232c5cb0a392ee1c0c6a37c0c
treeac86f6076796aee4b0ae834485ea37a57165a8ef
parent3e5cb4229f5a6b1ff8a1bff6d6dd5d9fa215d09e
ATO-48, ATO-36, ATO-35, Step to consistent exception handling in AliRoot and optional usage of core dumps

ALIROOT/aliroot.cxx - Initialize AliLog before starting application
                    - Catch not caught exception and make AliFatal (stack/trace optionally core dumps)

http://stackoverflow.com/questions/1897940/in-what-ways-do-c-exceptions-slow-down-code-when-there-are-no-exceptions-thown
STEER/STEERBase/AliLog.{h,.cxx} -  dumy AliLog::TestException method for Unit test of exception handling

Example output:

root [0] AliLog::TestException()
Excception catchedTest exception
F-Exception catched: Exception catched
    at /u/miranov/AliRoot/git/TPCdev/STEER/STEERBase/AliLog.cxx:951
Aborted

*In case ALIROOT_FORCE_COREDUMP envirnment variable set*
AliLog::MakeCoreDump
[Thread debugging using libthread_db enabled]
0x00007fb61272f83e in __libc_waitpid (pid=<value optimized out>, stat_loc=0x7fff5489ee0c, options=<value optimized out>) at ../sysdeps/unix/sysv/linux/waitpid.c:32
32      ../sysdeps/unix/sysv/linux/waitpid.c: No such file or directory.
        in ../sysdeps/unix/sysv/linux/waitpid.c
Current language:  auto
The current source language is "auto; currently c".
Saved corefile core.AliRoot.25124
ALIROOT/aliroot.cxx
STEER/STEERBase/AliLog.cxx
STEER/STEERBase/AliLog.h