<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/81686>81686</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
TestDAP_commands.py flakiness due to lldb-dap exit crashes
</td>
</tr>
<tr>
<th>Labels</th>
<td>
lldb
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
rupprecht
</td>
</tr>
</table>
<pre>
Context: https://lab.llvm.org/buildbot/#/builders/68/builds/68776
The test has some exit commands:
```
"exitCommands": [
"?settings set target.show-hex-variable-values-with-leading-zeroes false",
"settings set target.show-hex-variable-values-with-leading-zeroes true"
],
"stopCommands": [
"?settings set target.show-hex-variable-values-with-leading-zeroes false",
"settings set target.show-hex-variable-values-with-leading-zeroes true"
],
"terminateCommands": [
"?settings set target.show-hex-variable-values-with-leading-zeroes false",
"settings set target.show-hex-variable-values-with-leading-zeroes true"
]
```
The test case itself passes, but tear down occasionally fails because we fail to get a `disconnect` response back. The DAP log shows this crash causing the dap server to shutdown before it can respond to the disconnect:
```
-->
Content-Length: 88
{
"arguments": {
"terminateDebuggee": true
},
"command": "disconnect",
"seq": 3,
"type": "request"
}
<--
Content-Length: 184
{
"body": {
"category": "console",
"output": "Running exitCommands:\n(lldb) settings set target.show-hex-variable-values-with-leading-zeroes true\n"
},
"event": "output",
"seq": 0,
"type": "event"
}
<--
Content-Length: 63
{
"body": {
"exitCode": 9
},
"event": "exited",
"seq": 0,
"type": "event"
}
<--
Content-Length: 405
{
"body": {
"category": "stderr",
"output": "assert.h assertion failed at llvm-project/lldb/source/Interpreter/CommandObject.cpp:153 in bool lldb_private::CommandObject::CheckRequirements(CommandReturnObject &): !m_exe_ctx.GetTargetPtr()\n"
},
"event": "output",
"seq": 0,
"type": "event"
}
...
<--
Content-Length: 430
{
"body": {
"category": "stderr",
"output": "PLEASE submit a bug report ....\nStack dump:\n0.\tProgram arguments: lldb-dap\n1.\tHandleCommand(command = \"settings set target.show-hex-variable-values-with-leading-zeroes false\")\u0000\n"
},
"event": "output",
"seq": 0,
"type": "event"
}
```
Aside: the buildbots do not enable this DAP logging, which would make debugging buildbot errors much easier.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzcV09v27gT_TT0ZSBBoSxZPvjg2vXvt0CBDdreA0ocS9xQpEoOnWQ__YKSHCeFW7TbYA8Fglh_Hh9nNI-PQ-G9ag3ihhXvWLFfiECddRsXhsFh09GitvJps7OG8JFYvoWOaPAs3zJ-YPygRZ1qfepT61rGD3VQWtaWxpf5-QE6z_ihrM73091qVbJsz7Lt9P9zh0DoCTrhwdseAR8VQWP7Xhg5zjihy2z-G28BABjnEbs7QzmPgcaEniEjiOUHj0TKtB48EpBwLVLqO_uQdPiYnIRTotaYnIQO6JMHRV2iUUhl2uRvdBY9HIX2GLn4bmZnnP8yK7kwks6Mxf5CP4XuyQ6_c36ErldGEP5WSV4T7Fdqb4RHUORRH2EQ3qNnfAd1ICAUDqR9MGCbRnhljdD6CY5CaQ81NiJ4hAccHwBZaJFAACszqXxjjcGGWJmBQz9Y4xFq0dynECfeb29B2xZidh6oUx4aJ3wHkVOZFqhDkGIAj-6ELpL7LtAYS41H62LE0Agzk8uIGMdcZn5erte-QZKw_D1M16O1GEo-oGmpizWvqldDV-8uNRKuDT0aepbH6t11Ge2xDm2LOOPG0sxAtnqpPsb5bDFnSs5fpPFSI5NIvsy4_PULehrwwuDwS0BPz2qIc04X-S5Jvpn5TbW8nnrkjEb8jbQbQdha93QJoLHGW_1a4xPWBhoCXZAfgzGx5q8cNN-yYmcYr7SWNeNreJvFMXLyq4WIHn5C8yKwS6DfqED2vQo8k_3M9y_zf_X5p08nz7Ovzyl9LbSvEozDUP6nCS6z4iczvKouTxKd-wFxRUNzlHYwXShrRrtCCYIg9g3J4Oxf40I7TFI7eBtcg4wf_jCEbnBI6Bg_zNL8s47otBkGlm9vihyUgdpaDXH03eDUSRBG-ebbVyPmRx029x_xS1AOZxupZthHpODMBAbGS8bXUw43_R0-4l1Dj-n_kD6P0r8lx3gVId9R9I9J-pcLnqbpD1U-z97IWq4U_0rlbz-83356Dz7UvYr7Uh1acDhYR5DGkIud-USiuQcZ-mH2myw-pltnWyd6uHh9vh3Lm0gxRNjNCPu_MFKf2wXGq9nFgeV7YMXuLTb0qU0YuaZahyzLsl-v-Rus8ms9xdYrieNu1yGcO3EP0oKxBGhiutNuPzcArTJt7DYeOtV08GCDltCLewQ57p5xVzjTADpnnYc-NB2g8ApdupCbXK7ztVjg5maVrapyVfD1ots0hSzqQuTLUiwR5bJZl3hc5bnA8pgX62KhNjzjy4zf5DzPq-U6LdZivVxJWZVY5OvVki0z7IXSz2eLhfI-4Ka6KatyoUWN2o8nFs4n2-Dx7OI2o6XUofVsmWnlyV8ISJHGzWf0tN_e3p2PFenwBEct7pVB70EGjK3MWWzzCSS2RugXwenN68NPq6gLddrYfrSv0_nnhamNYcfzzhj5PwEAAP__Un776A">