-
-
Notifications
You must be signed in to change notification settings - Fork 30
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Amphp gets stuck in and infinite loop doing nothing if firewall delays port access #37
Comments
I've fixed this by writing to a deterministic destination based on the content hash of the wrapper process. Could you test it by requiring |
using a
|
@trowski the process gets stuck idle. yes it looks like the code you referred doesn't get triggered. |
@trowski i think i have to revise my last comment. as i am using the lib with fink or box and not standalone have noticed different behaviors. with fink results in an error:
so it looks like we have an 15sec timeout, an exception which is caught by the app and a failure after the app finished. the never ending loop i had with an old version with box. |
@trowski tested it again with the current fink version in source form (so |
@kelunik told me to open a ticket here.
its quite a while but as the problem with box was easy solvable by using the
--no-parallel
option i simply forgot until i hit the problem again with fink.i am not sure where to write which info, it feels i would post the same text in parallel and process as i haven't used amphp directly but only tools which use it, i don't know the internals.
if i run fink it simply gets stuck forever on a windows system with a firewall.
if my firewall is in learning mode, it ask me to allow
ampXXXX.tmp
a local connection.after allowing it, the connection monitor show the following:
this 3 php and amp processes stay there forever in an infinite loop and are doing nothing (no more as the initial 22 bytes are sent or received).
if i run the firewall in allow all mode (which sadly makes no sense at all), it works without a problem.
so it looks like amphp has a problem if the port is not instantly accessible but delayed by a firewall learning mode dialog.
as the amp process names are randomly generated it is not possible to precreate the firewall rules.
having some kind of check if ports can be accessed and if not some kind of fallback could be a solution. a slow synchronous processing is still faster as a infinite do nothing processing :)
edit: non-dynamic ports can also help (only in combination with non random process names)
The text was updated successfully, but these errors were encountered: