[vz-users] vzlogger stürzt immer ab
Andreas Götz
cpuidle at gmail.com
Tue Mar 10 21:13:41 CET 2015
Könnten wir testweise auf den commit vor dem join der curl sessions gehen um zu schauen ob das die Ursache ist?
Viele Grüße, Andreas
> Am 10.03.2015 um 20:17 schrieb Matthias Behr <mbehr at mcbehr.de>:
>
> Hallo,
>
> Danke!
>
> Komisch, irgendjemand schickt ein SIGABRT.
>
> Entweder intern (z.B: indirekt durch malloc/free (gerade weil du da eine andere Lib nutzt) oder von außen.
>
> Wir müssen rausbekommen, welcher Thread das ist. Die meisten Threads warten wie geplant:
>
> #8 pthread_join ist in main() Thread
> #2, #3, #4, #7, #9 pthread_cond_wait -> logging_thread
> #6 poll ? -> reading_thread: MeterSO?
> #5 nanosleep -> reading_thread?
>
> #1 ??? der macht Probleme.
>
> Wir müssen herausbekommen, was Thread #1 eigentlich macht. Könnte auch aus einer Lib sein (z.B. libcurl,…)
>
> Schickst du noch mal deine komplette Config? (5 Channel?)
>
>
>
>> Am 10.03.2015 um 06:07 schrieb oderwas at gmx.net:
>>
>> Hallo Matthias,
>>
>> ich fand den bt wenig aussagekräftig, daher habe ich es noch detaillierter aufgerufen:
>>
>> # gdb /usr/local/bin/vzlogger core.vzlogger.26305.stromzaehler.1425931568
>> GNU gdb (GDB) 7.4.1-debian
>> Copyright (C) 2012 Free Software Foundation, Inc.
>> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
>> This is free software: you are free to change and redistribute it.
>> There is NO WARRANTY, to the extent permitted by law. Type "show copying"
>> and "show warranty" for details.
>> This GDB was configured as "arm-linux-gnueabihf".
>> For bug reporting instructions, please see:
>> <http://www.gnu.org/software/gdb/bugs/>...
>> Reading symbols from /usr/local/bin/vzlogger...done.[New LWP 26310]
>> [New LWP 26311]
>> [New LWP 26313]
>> [New LWP 26307]
>> [New LWP 26306]
>> [New LWP 26309]
>> [New LWP 26308]
>> [New LWP 26305]
>> [New LWP 26312]
>> [Thread debugging using libthread_db enabled]
>> Using host libthread_db library "/lib/arm-linux-gnueabihf/libthread_db.so.1".
>> Core was generated by `vzlogger'.
>> Program terminated with signal 6, Aborted.
>> #0 0xb699ef50 in raise ()
>> from /lib/arm-linux-gnueabihf/libc.so.6
>> (gdb) thread apply all bt full
>>
>> Thread 9 (Thread 0xb2fff400 (LWP 26312)):
>> #0 0xb6ede7a4 in pthread_cond_wait@@GLIBC_2.4 ()
>> from /lib/arm-linux-gnueabihf/libpthread.so.0
>> No symbol table info available.
>> #1 0x00060c54 in Buffer::wait(pthread_cond_t*) ()
>> at /home/pi/vzlogger_mb/vzlogger/include/Buffer.hpp:68
>> std::__ioinit = {
>> static _S_refcount = <optimized out>,
>> static _S_synced_with_stdio = <optimized out>}
>> #2 0x00060d38 in Channel::wait() ()
>> at /home/pi/vzlogger_mb/vzlogger/include/Channel.hpp:86
>> std::__ioinit = {
>> static _S_refcount = <optimized out>,
>> static _S_synced_with_stdio = <optimized out>}
>> #3 0x00064d84 in logging_thread(void*) ()
>> at /home/pi/vzlogger_mb/vzlogger/src/threads.cpp:209
>> std::__ioinit = {
>> static _S_refcount = <optimized out>,
>> static _S_synced_with_stdio = <optimized out>}
>> #4 0xb6ed9e90 in start_thread ()
>> from /lib/arm-linux-gnueabihf/libpthread.so.0
>> No symbol table info available.
>> ---Type <return> to continue, or q <return> to quit---
>> #5 0xb6a3f4e8 in ?? ()
>> from /lib/arm-linux-gnueabihf/libc.so.6
>> No symbol table info available.
>> #6 0xb6a3f4e8 in ?? ()
>> from /lib/arm-linux-gnueabihf/libc.so.6
>> No symbol table info available.
>> Backtrace stopped: previous frame identical to this frame (corrupt stack?)
>>
>> Thread 8 (Thread 0xb63da340 (LWP 26305)):
>> #0 0xb6edb274 in pthread_join ()
>> from /lib/arm-linux-gnueabihf/libpthread.so.0
>> No symbol table info available.
>> #1 0x000616fc in MeterMap::stopped() ()
>> at /home/pi/vzlogger_mb/vzlogger/src/MeterMap.cpp:90
>> std::__ioinit = {
>> static _S_refcount = <optimized out>,
>> static _S_synced_with_stdio = <optimized out>}
>> #2 0x00045ec8 in main ()
>> at /home/pi/vzlogger_mb/vzlogger/src/vzlogger.cpp:446
>> long_options = {{name = 0x109304 "config",
>> has_arg = 1, flag = 0x0, val = 99}, {
>> name = 0x10930c "log", has_arg = 1,
>> flag = 0x0, val = 111}, {
>> name = 0x109310 "daemon", has_arg = 1,
>> flag = 0x0, val = 100}, {
>> ---Type <return> to continue, or q <return> to quit---
>> name = 0x109318 "httpd", has_arg = 0,
>> flag = 0x0, val = 108}, {
>> name = 0x109320 "httpd-port",
>> has_arg = 1, flag = 0x0, val = 112}, {
>> name = 0x10932c "register",
>> has_arg = 0, flag = 0x0, val = 114}, {
>> name = 0x109338 "verbose",
>> has_arg = 1, flag = 0x0, val = 118}, {
>> name = 0x109340 "help", has_arg = 0,
>> flag = 0x0, val = 104}, {
>> name = 0x109348 "version",
>> has_arg = 0, flag = 0x0, val = 86}, {
>> name = 0x0, has_arg = 0, flag = 0x0,
>> val = 0}}
>> std::__ioinit = {
>> static _S_refcount = <optimized out>,
>> static _S_synced_with_stdio = <optimized out>}
>> options = {_config = "/etc/vzlogger.conf",
>> _log = "/var/log/vzlogger.log",
>> _logfd = 0xc5d498, _port = 8080,
>> _verbosity = 15, _comet_timeout = 30,
>> _buffer_length = 600, _retry_pause = 30,
>> _channel_index = -1, _daemon = -1,
>> _local = 0, _logging = -1,
>> _doRegistration = 0}
>> gSkippedFailed = 0
>> long_options_descs = {
>> 0x108e60 "configuration file",
>> ---Type <return> to continue, or q <return> to quit---
>> 0x108e74 "log file",
>> 0x108e80 "run in background",
>> 0x108e94 "activate local interface (tiny HTTPd which serves live readings)",
>> 0x108ed8 "TCP port for HTTPd",
>> 0x108eec "register device",
>> 0x108efc "enable verbose output",
>> 0x108f14 "show this help",
>> 0x108f24 "show version of vzlogger", 0x0}
>> gStop = false
>> mappings = {
>> _mappings = std::vector of length 2, capacity 2 = {{_meter =
>> std::tr1::shared_ptr (count 2, weak 0) 0xc5a370,
>> _channels = std::vector of length 3, capacity 3 = {
>>
>> std::tr1::shared_ptr (count 1, weak 0) 0xc5c268, std::tr1::shared_ptr (count 1, weak 0) 0xc5c348,
>> std::tr1::shared_ptr (count 1, weak 0) 0xc5c608}, _thread_running = true,
>> _thread = 3057484800}, {
>> _meter = std::tr1::shared_ptr (count 2, weak 0) 0xc5cc50,
>> _channels = std::vector of length 3, capacity 3 = {
>> std::tr1::shared_ptr (count 1, weak 0) 0xc5cd38,
>> std::tr1::shared_ptr (count 1, weak 0) 0xc5c---Type <return> to continue, or q <return> -- quit--
>> fa0,
>> std::tr1::shared_ptr (count 1, weak 0) 0xc5d138}, _thread_running = true, _thread = 3019895808}}}
>>
>> Thread 7 (Thread 0xb53d8400 (LWP 26308)):
>> #0 0xb6ede7a4 in pthread_cond_wait@@GLIBC_2.4 ()
>> from /lib/arm-linux-gnueabihf/libpthread.so.0
>> No symbol table info available.
>> #1 0x00060c54 in Buffer::wait(pthread_cond_t*) ()
>> at /home/pi/vzlogger_mb/vzlogger/include/Buffer.hpp:68
>> std::__ioinit = {
>> static _S_refcount = <optimized out>,
>> static _S_synced_with_stdio = <optimized out>}
>> #2 0x00060d38 in Channel::wait() ()
>> at /home/pi/vzlogger_mb/vzlogger/include/Channel.hpp:86
>> std::__ioinit = {
>> static _S_refcount = <optimized out>,
>> static _S_synced_with_stdio = <optimized out>}
>> #3 0x00064d84 in logging_thread(void*) ()
>> at /home/pi/vzlogger_mb/vzlogger/src/threads.cpp:209
>> std::__ioinit = {
>> static _S_refcount = <optimized out>,
>> static _S_synced_with_stdio = <optimized out>}
>> ---Type <return> to continue, or q <return> to quit---
>> #4 0xb6ed9e90 in start_thread ()
>> from /lib/arm-linux-gnueabihf/libpthread.so.0
>> No symbol table info available.
>> #5 0xb6a3f4e8 in ?? ()
>> from /lib/arm-linux-gnueabihf/libc.so.6
>> No symbol table info available.
>> #6 0xb6a3f4e8 in ?? ()
>> from /lib/arm-linux-gnueabihf/libc.so.6
>> No symbol table info available.
>> Backtrace stopped: previous frame identical to this frame (corrupt stack?)
>>
>> Thread 6 (Thread 0xb49ff400 (LWP 26309)):
>> #0 0xb6a35af0 in poll ()
>> from /lib/arm-linux-gnueabihf/libc.so.6
>> No symbol table info available.
>> #1 0xb6a4ccf4 in ?? ()
>> from /lib/arm-linux-gnueabihf/libc.so.6
>> No symbol table info available.
>> #2 0x00000000 in ?? ()
>> No symbol table info available.
>>
>> Thread 5 (Thread 0xb63d8400 (LWP 26306)):
>> #0 0xb6a0d200 in nanosleep ()
>> from /lib/arm-linux-gnueabihf/libc.so.6
>> No symbol table info available.
>> #1 0xb6a4ccf4 in ?? ()
>> from /lib/arm-linux-gnueabihf/libc.so.6
>> No symbol table info available.
>> ---Type <return> to continue, or q <return> to quit---
>> #2 0x00000000 in ?? ()
>> No symbol table info available.
>>
>> Thread 4 (Thread 0xb5bd8400 (LWP 26307)):
>> #0 0xb6ede7a4 in pthread_cond_wait@@GLIBC_2.4 ()
>> from /lib/arm-linux-gnueabihf/libpthread.so.0
>> No symbol table info available.
>> #1 0x00060c54 in Buffer::wait(pthread_cond_t*) ()
>> at /home/pi/vzlogger_mb/vzlogger/include/Buffer.hpp:68
>> std::__ioinit = {
>> static _S_refcount = <optimized out>,
>> static _S_synced_with_stdio = <optimized out>}
>> #2 0x00060d38 in Channel::wait() ()
>> at /home/pi/vzlogger_mb/vzlogger/include/Channel.hpp:86
>> std::__ioinit = {
>> static _S_refcount = <optimized out>,
>> static _S_synced_with_stdio = <optimized out>}
>> #3 0x00064d84 in logging_thread(void*) ()
>> at /home/pi/vzlogger_mb/vzlogger/src/threads.cpp:209
>> std::__ioinit = {
>> static _S_refcount = <optimized out>,
>> static _S_synced_with_stdio = <optimized out>}
>> #4 0xb6ed9e90 in start_thread ()
>> ---Type <return> to continue, or q <return> to quit---
>> from /lib/arm-linux-gnueabihf/libpthread.so.0
>> No symbol table info available.
>> #5 0xb6a3f4e8 in ?? ()
>> from /lib/arm-linux-gnueabihf/libc.so.6
>> No symbol table info available.
>> #6 0xb6a3f4e8 in ?? ()
>> from /lib/arm-linux-gnueabihf/libc.so.6
>> No symbol table info available.
>> Backtrace stopped: previous frame identical to this frame (corrupt stack?)
>>
>> Thread 3 (Thread 0xb27ff400 (LWP 26313)):
>> #0 0xb6ede7a4 in pthread_cond_wait@@GLIBC_2.4 ()
>> from /lib/arm-linux-gnueabihf/libpthread.so.0
>> No symbol table info available.
>> #1 0x00060c54 in Buffer::wait(pthread_cond_t*) ()
>> at /home/pi/vzlogger_mb/vzlogger/include/Buffer.hpp:68
>> std::__ioinit = {
>> static _S_refcount = <optimized out>,
>> static _S_synced_with_stdio = <optimized out>}
>> #2 0x00060d38 in Channel::wait() ()
>> at /home/pi/vzlogger_mb/vzlogger/include/Channel.hpp:86
>> std::__ioinit = {
>> static _S_refcount = <optimized out>,
>> static _S_synced_with_stdio = <optimized out>}
>> ---Type <return> to continue, or q <return> to quit---
>> #3 0x00064d84 in logging_thread(void*) ()
>> at /home/pi/vzlogger_mb/vzlogger/src/threads.cpp:209
>> std::__ioinit = {
>> static _S_refcount = <optimized out>,
>> static _S_synced_with_stdio = <optimized out>}
>> #4 0xb6ed9e90 in start_thread ()
>> from /lib/arm-linux-gnueabihf/libpthread.so.0
>> No symbol table info available.
>> #5 0xb6a3f4e8 in ?? ()
>> from /lib/arm-linux-gnueabihf/libc.so.6
>> No symbol table info available.
>> #6 0xb6a3f4e8 in ?? ()
>> from /lib/arm-linux-gnueabihf/libc.so.6
>> No symbol table info available.
>> Backtrace stopped: previous frame identical to this frame (corrupt stack?)
>>
>> Thread 2 (Thread 0xb37ff400 (LWP 26311)):
>> #0 0xb6ede7a4 in pthread_cond_wait@@GLIBC_2.4 ()
>> from /lib/arm-linux-gnueabihf/libpthread.so.0
>> No symbol table info available.
>> #1 0x00060c54 in Buffer::wait(pthread_cond_t*) ()
>> at /home/pi/vzlogger_mb/vzlogger/include/Buffer.hpp:68
>> std::__ioinit = {
>> static _S_refcount = <optimized out>,
>> static _S_synced_with_stdio = <optimized o---Type <return> to continue, or q <return> to quit---
>> ut>}
>> #2 0x00060d38 in Channel::wait() ()
>> at /home/pi/vzlogger_mb/vzlogger/include/Channel.hpp:86
>> std::__ioinit = {
>> static _S_refcount = <optimized out>,
>> static _S_synced_with_stdio = <optimized out>}
>> #3 0x00064d84 in logging_thread(void*) ()
>> at /home/pi/vzlogger_mb/vzlogger/src/threads.cpp:209
>> std::__ioinit = {
>> static _S_refcount = <optimized out>,
>> static _S_synced_with_stdio = <optimized out>}
>> #4 0xb6ed9e90 in start_thread ()
>> from /lib/arm-linux-gnueabihf/libpthread.so.0
>> No symbol table info available.
>> #5 0xb6a3f4e8 in ?? ()
>> from /lib/arm-linux-gnueabihf/libc.so.6
>> No symbol table info available.
>> #6 0xb6a3f4e8 in ?? ()
>> from /lib/arm-linux-gnueabihf/libc.so.6
>> No symbol table info available.
>> Backtrace stopped: previous frame identical to this frame (corrupt stack?)
>>
>> Thread 1 (Thread 0xb3fff400 (LWP 26310)):
>> #0 0xb699ef50 in raise ()
>> ---Type <return> to continue, or q <return> to quit---
>> from /lib/arm-linux-gnueabihf/libc.so.6
>> No symbol table info available.
>> #1 0xb69a0304 in abort ()
>> from /lib/arm-linux-gnueabihf/libc.so.6
>> No symbol table info available.
>> #2 0x00000020 in ?? ()
>> No symbol table info available.
>> #3 0x00000020 in ?? ()
>> No symbol table info available.
>> Backtrace stopped: previous frame identical to this frame (corrupt stack?)
>>
>>
>> Beste Grüße
>>
>> Markus
>
> Gruß
>
> Matthias Behr
>
More information about the volkszaehler-users
mailing list