2025-07-25 04:00 CEST

View Issue Details Jump to Notes ]
IDProjectCategoryView StatusLast Update
0002427Spring engineGeneralpublic2011-06-08 01:23
Reporterabma 
Assigned Tozerver 
PrioritynormalSeverityminorReproducibilitysometimes
StatusresolvedResolutionfixed 
Product Version 
Target VersionFixed in Version0.82.7+git 
Summary0002427: (master) deadlock in "Finalizing"
Descriptioni got a deadlock when starting spring master

it simply hangs after printing "Finalizing"
Additional Information bt full
#0 pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
No locals.
#1 0x0000000000e3723c in boost::condition_variable::wait (this=0x19f63d0,
    m=...) at /usr/include/boost/thread/pthread/condition_variable.hpp:20
        check_for_interruption = {thread_info = 0x2b12720}
        __PRETTY_FUNCTION__ = "void boost::condition_variable::wait(boost::unique_lock<boost::mutex>&)"
#2 0x0000000000fb89e7 in boost::shared_mutex::lock_shared (this=0x19f63a0)
    at /usr/include/boost/thread/pthread/shared_mutex.hpp:64
        do_not_disturb = {interruption_was_enabled = false}
        lk = {m = 0x19f63a8, is_locked = true}
0000003 0x0000000000fb93b8 in boost::shared_lock<boost::shared_mutex>::lock (
    this=0x7fff5b98ca30) at /usr/include/boost/thread/locks.hpp:575
No locals.
0000004 0x0000000000fb8c71 in boost::shared_lock<boost::shared_mutex>::shared_lock
    (this=0x7fff5b98ca30, m_=...) at /usr/include/boost/thread/locks.hpp:458
No locals.
0000005 0x0000000000fb810a in Watchdog::ClearTimer (disable=false,
    _threadId=0x312b768)
    at /home/abma/dev/spring/master/rts/System/Platform/Watchdog.cpp:115
        __PRETTY_FUNCTION__ = "void Watchdog::ClearTimer(bool, Threading::NativeThreadId*)"
---Type <return> to continue, or q <return> to quit---
        th_info = @0xfb9113
        lock = {m = 0x19f63a0, is_locked = false}
        threadId = 140734730128016
        it = {_M_node = 0x7fff5b98ca70}
#6 0x0000000000fb82b5 in Watchdog::ClearTimer (name=..., disable=false)
    at /home/abma/dev/spring/master/rts/System/Platform/Watchdog.cpp:145
        lock = {m = 0x19f63a0, is_locked = true}
        it = {_M_node = 0x312b740}
#7 0x0000000000f8ed8e in Watchdog::ClearTimer (name=0x13fc22e "main",
    disable=false)
    at /home/abma/dev/spring/master/rts/System/Platform/Watchdog.h:20
No locals.
#8 0x0000000000f8e0c9 in SpringApp::Update (this=0x7fff5b98cc20)
    at /home/abma/dev/spring/master/rts/System/SpringApp.cpp:1038
        ret = 1
#9 0x0000000000f8e342 in SpringApp::Run (this=0x7fff5b98cc20, argc=1,
    argv=0x7fff5b98cde8)
    at /home/abma/dev/spring/master/rts/System/SpringApp.cpp:1162
No locals.
0000010 0x0000000000f9201f in MainFunc (argc=1, argv=0x7fff5b98cde8,
    ret=0x7fff5b98cccc) at /home/abma/dev/spring/master/rts/System/Main.cpp:57
        app = {cmdline = 0x2b12880, lastRequiredDraw = 0, static ogc = 0x0}
#11 0x0000000000f922b2 in Run (argc=1, argv=0x7fff5b98cde8)
---Type <return> to continue, or q <return> to quit---
    at /home/abma/dev/spring/master/rts/System/Main.cpp:68
        ret = -1
        err = 0x1ff
0000012 0x0000000000f9234b in main (argc=1, argv=0x7fff5b98cde8)
    at /home/abma/dev/spring/master/rts/System/Main.cpp:90
No locals.
TagsNo tags attached.
Checked infolog.txt for Errors
Attached Files

-Relationships
+Relationships

-Notes

~0006711

zerver (reporter)

I tracked down the problem (with near certainty) to the new shared mutex features in boost. Threads were waiting on each other for no apparent reason. Possibly incorrect usage of the mutex, or some kind of bug, I did not have time to dig deeper. Now using good old mutexes, plz reopen if the problem reappears.

https://github.com/spring/spring/commit/0e03098cda1e0f9b9856caed8fa04782d951d4bd
+Notes

-Issue History
Date Modified Username Field Change
2011-05-11 01:37 abma New Issue
2011-06-01 00:13 abma Summary deadlock in "Finalizing" => (master) deadlock in "Finalizing"
2011-06-08 01:23 zerver Note Added: 0006711
2011-06-08 01:23 zerver Status new => resolved
2011-06-08 01:23 zerver Fixed in Version => 0.82.7+git
2011-06-08 01:23 zerver Resolution open => fixed
2011-06-08 01:23 zerver Assigned To => zerver
+Issue History