Opened 7 years ago
Closed 7 years ago
#12010 closed Bugs (invalid)
Exception thrown when using syslog_backend and a separate asio_server with a udp socket
| Reported by: | Owned by: | Andrey Semashev | |
|---|---|---|---|
| Milestone: | To Be Determined | Component: | log |
| Version: | Boost 1.60.0 | Severity: | Showstopper |
| Keywords: | log, syslog, asio, udp | Cc: |
Description
When I try to setup a syslog_backend in a code base that already has an asio_server that opens UDP sockets, an exception gets thrown.
I am building with gcc 4.8 on ubuntu 14.04.
I compile my program as such:
/usr/bin/c++ -Wall -Werror -std=c++11 -g -I/home/Phil/work/3p/posix-x86_64/boost@1.60.0/include -MMD -MT boostTestProject/CMakeFiles/BoostExe.dir/main.cpp.o -MF "boostTestProject/CMakeFiles/BoostExe.dir/main.cpp.o.d" -o boostTestProject/CMakeFiles/BoostExe.dir/main.cpp.o -c /home/Phil/work/Testing/boostTestProject/main.cpp usr/bin/c++ -Wall -Werror -std=c++11 -g boostTestProject/CMakeFiles/BoostExe.dir/main.cpp.o -o boostTestProject/BoostExe -rdynamic /home/Phil/work/3p/posix-x86_64/boost@1.60.0/lib/static/debug/libboost_log.a /home/Phil/work/3p/posix-x86_64/boost@1.60.0/lib/static/debug/libboost_log_setup.a /home/Phil/work/3p/posix-x86_64/boost@1.60.0/lib/static/debug/libboost_system.a /home/Phil/work/3p/posix-x86_64/boost@1.60.0/lib/static/debug/libboost_filesystem.a /home/Phil/work/3p/posix-x86_64/boost@1.60.0/lib/static/debug/libboost_date_time.a /home/Phil/work/3p/posix-x86_64/boost@1.60.0/lib/static/debug/libboost_program_options.a /home/Phil/work/3p/posix-x86_64/boost@1.60.0/lib/static/debug/libboost_thread.a /home/Phil/work/3p/posix-x86_64/boost@1.60.0/lib/static/debug/libboost_chrono.a -lpthread -lrt
Below is a capture of the stack trace and error I get:
Traceback (most recent call last):
File "/usr/share/gdb/auto-load/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.19-gdb.py", line 63, in <module>
from libstdcxx.v6.printers import register_libstdcxx_printers
ImportError: No module named 'libstdcxx'
terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::system::system_error> >'
what(): open: Already open
Program received signal SIGABRT, Aborted.
0x00007ffff710bcc9 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
56 ../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
#0 0x00007ffff710bcc9 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#1 0x00007ffff710f0d8 in __GI_abort () at abort.c:89
#2 0x00007ffff7710535 in __gnu_cxx::__verbose_terminate_handler() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#3 0x00007ffff770e6d6 in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#4 0x00007ffff770e703 in std::terminate() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#5 0x00007ffff770e976 in __cxa_rethrow () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#6 0x00000000004c1d08 in boost::log::v2s_mt_posix::core::push_record_move (this=0x74c930, rec=...) at libs/log/src/core.cpp:734
#7 0x00000000004a29b1 in push_record (
rec=<unknown type in /home/Phil/work/build/Testing/Ninja/Debug/boostTestProject/BoostExe, CU 0x42378, DIE 0x723ce>, this=0x74c930)
at /home/pjosep/work/boost_1_60_0_built/posix-x86_64/boost@1.56.0/include/boost/log/core/core.hpp:308
#8 boost::log::v2s_mt_posix::sources::basic_logger<char, boost::log::v2s_mt_posix::sources::severity_logger_mt<int>, boost::log::v2s_mt_posix::sources::multi_thread_model<boost::log::v2s_mt_posix::aux::light_rw_mutex> >::push_record_unlocked(boost::log::v2s_mt_posix::record&&) (
this=0x7fffffffe070,
rec=<unknown type in /home/Phil/work/build/Testing/Ninja/Debug/boostTestProject/BoostExe, CU 0x42378, DIE 0x7bb10>)
at /home/pjosep/work/boost_1_60_0_built/posix-x86_64/boost@1.56.0/include/boost/log/sources/basic_logger.hpp:267
#9 0x00000000004a198a in boost::log::v2s_mt_posix::sources::basic_composite_logger<char, boost::log::v2s_mt_posix::sources::severity_logger_mt<int>, boost::log::v2s_mt_posix::sources::multi_thread_model<boost::log::v2s_mt_posix::aux::light_rw_mutex>, boost::log::v2s_mt_posix::sources::features<boost::log::v2s_mt_posix::sources::severity<int> > >::push_record(boost::log::v2s_mt_posix::record&&) (this=0x7fffffffe070,
rec=<unknown type in /home/Phil/work/build/Testing/Ninja/Debug/boostTestProject/BoostExe, CU 0x42378, DIE 0x7bb10>)
at /home/pjosep/work/boost_1_60_0_built/posix-x86_64/boost@1.56.0/include/boost/log/sources/basic_logger.hpp:472
#10 0x00000000004a0792 in boost::log::v2s_mt_posix::aux::record_pump<boost::log::v2s_mt_posix::sources::severity_logger_mt<int> >::~record_pump (
this=0x7fffffffdff0, __in_chrg=<optimized out>)
at /home/pjosep/work/boost_1_60_0_built/posix-x86_64/boost@1.56.0/include/boost/log/sources/record_ostream.hpp:340
#11 0x000000000049c341 in main (argc=1, argv=0x7fffffffe1e8) at /home/Phil/work/Testing/boostTestProject/main.cpp:43
Attachments (1)
Change History (3)
by , 7 years ago
| Attachment: | SyslogFailureSource.cpp added |
|---|
comment:1 by , 7 years ago
comment:2 by , 7 years ago
| Resolution: | → invalid |
|---|---|
| Status: | new → closed |
Note:
See TracTickets
for help on using tickets.

Actually, I figured out our issue. We needed to add c++11 compile flags to our static builds of Log.