Danny Tuppeny
Danny Tuppeny
Thanks! In the log file I can see that after the restart when we send the breakpoints to the new isolates, we call `readyToResume` but it doesn't appear that the...
I think I've been able to reproduce this using a physical Pixel 4a. But it doesn't seem to always require a hot restart, sometimes it just happens on the initial...
@bkonyi I added some logging inside `readyToResume` inside DDS. It appears that one of the requests calls `_resumeCommon` which never completes, and then because of the mutex everything else queues...
@bkonyi I've been running with a locally built engine to enable `"--dart-flags=\"--trace_service --trace_service_pause_events --trace_debugger_stacktrace\""` however I'm not seeing any additional data anywhere (but I'm not sure where I'm supposed to...
> `getStack()` shouldn't be causing any sort of hang since it can be executed even when the isolate isn't paused Ah, I wasn't sure if it might have to pause...
@bkonyi unfortunately (assuming running `adb logcat` with no flags is the right thing), nothing seems to show up their either. Here's the full log starting from "The Dart VM service...
@bkonyi this is interesting... I added another `print` to happen after 3 seconds: ``` print('Waiting for isolates...'); Future.delayed( const Duration(seconds: 3), ).then((_) => print('Isolates should have finished by now!')); List...
@bkonyi great, thank you! FWIW I had much better luck reproducing it from my Windows PC, but I _was_ able to reproduce it on the Mac at a lower frequency...
@bkonyi ping - I don't suppose you had a chance to look at this?
I've pushed some logging so that if this happens again, you can open the dev tools (Help -> Toggle Developer Tools) and should see warnings if we're failing to match...