Closed kelunik closed 6 years ago
Unfortunately this appears to have had no effect. Possible concurrency before failing due to timeout is exactly the same as before this patch.
@Bilge Does the new patch change anything?
Yes! :ok_hand: I can now achieve concurrency up to about ~1500 without changing the timeout. Anything more than that and I just run out of memory, but timeouts no longer seem to occur.
Aside, I'm not sure force pushing is really such a good idea. Obviously your older solution was not the answer but now there's no record it ever existed. It's usually a good idea to keep old ideas around if only for posterity.
@Bilge Nobody needs a non-working fix for an issue. ;-)
It's basically the same idea, but applied a bit differently.
One day you might want to refer back to something you tried that didn't work. Just a thought; I don't mean to tell you how to run your projects.
@Bilge There are cases where keeping the history is beneficial, but not in this case. The new implementation is both more elegant and actually correct. ;-)
@kelunik Is it not possible to write a test case for this? It would be unfortunate if this were to creep back in as a regression later.
@Bilge Definitely! Do you want to provide a PR? Basically it just needs to start a process and then directly call sleep(2);
before yielding $process->join();
.
That doesn't sound as difficult as I was imagining, but I'm still not sure it is within my ability.
@Bilge Just push a PR with what you have and we can improve it together. :-)
Fixes #21.
@Bilge please try with this branch.