[Ace-users] Race condition between handle_input() & handle_timeout() in ACE_Svc_Handler ?

ShawnQ Shawn.Chain at gmail.com
Fri Nov 16 01:57:49 CST 2007


Here is one of the crashes during test.

==== Logs ====
2007/11/16 15:36:22 Operation/I: [Thread-0xa78] >>>>>>>> Handler
0x10789d8 created for new client connection
2007/11/16 15:36:22 Operation/I: [Thread-0xe88] Handler(0x10789d8)
refCount increased to 2
2007/11/16 15:36:22 Policy/W: [Thread-0xe80] Writing response to
client...
2007/11/16 15:36:22 Operation/I: [Thread-0xe80] Handler(0x10789d8)
refCount decreased to 1
2007/11/16 15:36:27 Operation/I: [Thread-0xba4] handle_timeout() will
mark handler(0x10789d8) for shutting-down and indicate ACE to destroy
it
2007/11/16 15:36:27 Operation/I: [Thread-0xba4] Handler(0x10789d8)
Connection to idle client 127.0.0.1:1761 timed out
2007/11/16 15:36:27 Operation/I: [Thread-0xa70] handle_input()
aborted, because handler 0x10789d8 is marked as shutting down
2007/11/16 15:36:27 Operation/I: [Thread-0xdf0] handle_input()
aborted, because handler 0x10789d8 is marked as shutting down
2007/11/16 15:36:27 Operation/I: [Thread-0xe88] handle_exception()
called on handler 0x10789d8
2007/11/16 15:36:27 Operation/I: [Thread-0xe88] handle_exception()
return -1 to shutdown handler 0x10789d8
2007/11/16 15:36:27 Operation/I: [Thread-0xe88] handle_close() unknow
mask: 4
2007/11/16 15:36:27 Operation/I: [Thread-0xe80] handle_input()
aborted, because handler 0x10789d8 is marked as shutting down
2007/11/16 15:36:27 Operation/I: [Thread-0xf10] handle_input()
aborted, because handler 0x10789d8 is marked as shutting down
2007/11/16 15:36:27 Operation/I: [Thread-0xa70] handle_input()
aborted, because handler 0x10789d8 is marked as shutting down
2007/11/16 15:36:27 Operation/I: [Thread-0xdf0] handle_input()
aborted, because handler 0x10789d8 is marked as shutting down
2007/11/16 15:36:27 Operation/I: [Thread-0xe88] Handler(0x10789d8)
refCount decreased to 0
2007/11/16 15:36:27 Operation/I: [Thread-0xe88] client connection from
127.0.0.1:1761 closed
2007/11/16 15:36:27 Operation/I: [Thread-0xe88] <<<<<<<< Handler
0x10789d8 is released

==== Crashing Thread(0x0xe80) call stack ====
`vcall'() + 2 bytes
ACE_TP_Reactor::handle_socket_events(int & 1, ACE_TP_Token_Guard &
{...}) line 499 + 12 bytes
ACE_TP_Reactor::dispatch_i(ACE_Time_Value * 0x00000000,
ACE_TP_Token_Guard & {...}) line 307 + 16 bytes
ACE_TP_Reactor::handle_events(ACE_Time_Value * 0x00000000) line 172 +
16 bytes
ACE_Reactor::handle_events(ACE_Time_Value * 0x00000000) line 173
ValidatorService::svc() line 530 + 33 bytes
ACE_Task_Base::svc_run(void * 0x00e38440) line 203 + 11 bytes
ACE_Thread_Adapter::invoke_i() line 150 + 7 bytes
ACE_Thread_Adapter::invoke() line 93 + 11 bytes
ace_thread_adapter(void * 0x01064118) line 131 + 10 bytes
_threadstartex(void * 0x01064180) line 227 + 13 bytes
KERNEL32! 7c80b6a3()


More information about the Ace-users mailing list