Comment 8 for bug 1176324

Sven Nierlein (sven-nierlein) wrote :

I could reproduce the problem with the 1.1.7 and the 1.0.6. Seems like the _wake_event never happens.

I added some more debug output, this is the normal workflow:
   INFO 2013-05-12 11:37:42.000000 [ main ] Accepted connection from 127.0.0.1:52706
   INFO 2013-05-12 11:37:42.000000 [ main ] gearmand_con_create() begin
   INFO 2013-05-12 11:37:42.000000 [ main ] gearmand_con_create() end
   INFO 2013-05-12 11:37:42.000000 [ main ] _listen_event() end 127.0.0.1:52706
   INFO 2013-05-12 11:37:42.000000 [ 4 ] _wakeup_event()
   INFO 2013-05-12 11:37:42.000000 [ 4 ] gearmand_con_check_queue()
   INFO 2013-05-12 11:37:42.000000 [ 4 ] Gear connection made
   INFO 2013-05-12 11:37:42.000000 [ 4 ] _thread_packet_read()
   INFO 2013-05-12 11:37:42.000000 [ 4 ] gearman_io_recv()

In some cases the wake up event is missing which then leads to the close waits with a stuck gearmand:
   INFO 2013-05-12 11:58:06.000000 [ main ] Accepted connection from 127.0.0.1:42747
   INFO 2013-05-12 11:58:06.000000 [ main ] gearmand_con_create() begin
   INFO 2013-05-12 11:58:06.000000 [ main ] gearmand_con_create() end
   INFO 2013-05-12 11:58:06.000000 [ main ] _listen_event() end 127.0.0.1:42747