langroodi / Adaptive-AUTOSAR

Adaptive Runtime AUTOSAR Linux Simulator
MIT License
386 stars 155 forks source link

SOME/IP SD server dead-lock #8

Closed langroodi closed 2 years ago

langroodi commented 2 years ago

Describe the bug In some situation (probably a racing condition), the SOME/IP SD server stuck in the Main phase state, and it cannot get out of that state anymore, even by calling server Stop!

To Reproduce It is a bit difficult to re-produce the error, but it seems sometimes stopping occurs before starting the server. The best way to debug sequence is to analyze the code itself.

Expected behavior The server should be gracefully stop event the Stop function is called explicitly or the server destructor is being invoked.

Additional context (please complete the following information):

langroodi commented 2 years ago

After a modification on the SOME/IP SD client, the stop mechanism dead-lock still can occur in the following unit tests sequence:

56/84 Test #56: SomeIpSdTest.ClientStart ...........................   Passed    0.70 sec
      Start 57: SomeIpSdTest.StartScenario
Error: The operation was canceled.

,

 59/104 Test  #59: SomeIpSdTest.ServerStopScenario ....................   Passed    0.81 sec
        Start  60: SomeIpSdTest.StopScenario

and

 57/133 Test  #57: SomeIpSdTest.StartScenario .........................***Exception: SegFault  0.89 sec
        Start  58: SomeIpSdTest.ClientStopScenario
langroodi commented 2 years ago

After 1ac136bb63acd40895362885820b4202f2236679 commit, the issue is seen again once at 54: SomeIpSdTest.ClientStart.