One other data point I can add is that the problem is independent of any particular module's way of suspending the transaction, though of course in hindsight this is obvious.
That is to say, just a manual t_suspend() will trigger the issue, no need to use `http_async_client` or any other module offering async operation ...