thread deadlock issue

A

ara.t.howard

can anyone interpret this

deadlock 0xb7d8ff3c: sleep:T(1000000000000000019884624838656.000000) - /usr/local/ruby-1.8.4/lib/ruby/site_ruby/slave.rb:306
deadlock 0xb7d90888: sleep:F(4) - /usr/local/ruby-1.8.4/lib/ruby/site_ruby/drb/unix.rb:87
deadlock 0xb7d8fe9c: sleep:S - /usr/local/ruby-1.8.4/lib/ruby/site_ruby/drb/drb.rb:127
^^
^^
^^
^^
the bit in question

??



-a
 
E

Eric Hodel

can anyone interpret this

deadlock 0xb7d8ff3c: sleep:T
(1000000000000000019884624838656.000000) - /usr/local/ruby-1.8.4/
lib/ruby/site_ruby/slave.rb:306
deadlock 0xb7d90888: sleep:F(4) - /usr/local/ruby-1.8.4/lib/ruby/
site_ruby/drb/unix.rb:87
deadlock 0xb7d8fe9c: sleep:S - /usr/local/ruby-1.8.4/lib/ruby/
site_ruby/drb/drb.rb:127
^^
^^
^^
^^
the bit in question

FOREACH_THREAD_FROM(curr, th) {
warn_printf("deadlock 0x%lx: %s:",
th->thread, thread_status_name(th->status));
if (th->wait_for & WAIT_FD) warn_printf("F(%d)", th->fd);
if (th->wait_for & WAIT_SELECT) warn_printf("S");
if (th->wait_for & WAIT_TIME) warn_printf("T(%f)", th->delay);
if (th->wait_for & WAIT_JOIN)
warn_printf("J(0x%lx)", th->join ? th->join->thread : 0);
if (th->wait_for & WAIT_PID) warn_printf("P");
if (!th->wait_for) warn_printf("-");
warn_printf(" %s - %s:%d\n",
th==main_thread ? "(main)" : "",
th->node->nd_file, nd_line(th->node));
}
 
A

ara.t.howard

FOREACH_THREAD_FROM(curr, th) {
warn_printf("deadlock 0x%lx: %s:",
th->thread, thread_status_name(th->status));
if (th->wait_for & WAIT_FD) warn_printf("F(%d)", th->fd);
if (th->wait_for & WAIT_SELECT) warn_printf("S");
if (th->wait_for & WAIT_TIME) warn_printf("T(%f)", th->delay);
if (th->wait_for & WAIT_JOIN)
warn_printf("J(0x%lx)", th->join ? th->join->thread : 0);
if (th->wait_for & WAIT_PID) warn_printf("P");
if (!th->wait_for) warn_printf("-");
warn_printf(" %s - %s:%d\n",
th==main_thread ? "(main)" : "",
th->node->nd_file, nd_line(th->node));
}

so, this seems like a bug. the thread in T state has made a call to 'sleep' -
if that thread is sleeping, and the other two are blocked on io/select, why
wouldn't it simply continue to sleep?

regards.

-a
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,744
Messages
2,569,484
Members
44,903
Latest member
orderPeak8CBDGummies

Latest Threads

Top