Bug #64644 [Nab]: Client-side abortion should be detected regardless of sending output

From: Date: Sun, 14 Apr 2013 01:35:14 +0000
Subject: Bug #64644 [Nab]: Client-side abortion should be detected regardless of sending output
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-178467@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=64644&edit=1 ID: 64644 Updated by: rasmus@php.net Reported by: matteosistisette at gmail dot com Summary: Client-side abortion should be detected regardless of sending output Status: Not a bug Type: Bug Package: *General Issues Operating System: Linux PHP Version: 5.3.24 Block user comment: N Private report: N New Comment: If you need this feature I would suggest you work on it and submit a patch. I doubt anybody here is going to. We work on things we need ourselves. Usually for any long-running things like this we farm it off to something like a Gearman job and check for progress via AJAX. Having a frontend Apache process tied up with something where super accurate client disconnect detection is relevant tends to be too inefficient. Previous Comments: ------------------------------------------------------------------------ [2013-04-14 01:23:33] matteosistisette at gmail dot com Sh**, my last comment got silently discarded somehow!! Please talk to apache developers directly! If I were developing PHP, I would feel the urge to fix this issue (or call it "implement this feature" if you want, a basic vital feature whose lack is a huge issue) and if this is not possible due to a bug (or design flaw) in Apache I would strive to have them fix it. ------------------------------------------------------------------------ [2013-04-14 00:42:33] rasmus@php.net They are basically saying that we could try to hack around Apache and try to write directly to do direct socket ops on a socket opened and managed by Apache. Very bad idea. I don't know of any environment that attempts to do this. See this conversation about the same issue in Django, for example: http://stackoverflow.com/questions/6019145/how-do-i-detect-an-aborted- connection-in-django This isn't something we are going to address with hacks in PHP. ------------------------------------------------------------------------ [2013-04-13 23:41:08] matteosistisette at gmail dot com Response from Apache developers: https://issues.apache.org/bugzilla/show_bug.cgi?id=54842#c1 I'm not sure I fully understand it but it seems they say there actually IS a way PHP can figure out if the connection is closed without attempting to write. ------------------------------------------------------------------------ [2013-04-13 22:15:41] matteosistisette at gmail dot com Unbelievable. Then the huge design flaw is in Apache. ------------------------------------------------------------------------ [2013-04-13 21:59:18] rasmus@php.net Apache handles the communication with the client browser and provides no mechanism for PHP to discover a client abort except on an actual write. ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at https://bugs.php.net/bug.php?id=64644 -- Edit this bug report at https://bugs.php.net/bug.php?id=64644&edit=1

« previous php.bugs (#178467) next »