httpd-bugs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bugzi...@apache.org
Subject DO NOT REPLY [Bug 17832] - Nasty customer javascript causes cascading reloads of same page from client
Date Wed, 19 Mar 2003 15:05:54 GMT
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=17832>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=17832

Nasty customer javascript causes cascading reloads of same page from client





------- Additional Comments From glenn@apache.org  2003-03-19 15:05 -------
With Apache 2.0.44 I saw a flood of requests from the same IP, 2-4 requests
per second, for a period of 30 - 90 seconds.  This was noticed when the request
is for a JSP page handled by mod_jk and forwarded to Tomcat for processing.
This problem is not seen when running Apache 1.3.

I verified that the javascript had not changed by checking the last modified
time of the file and I also verified this with the customer.

Since the javascript had not changed remote client browsers would be exhibiting
the same infinite loop reload behaviour regardless of whether Apache 1.3 or
Apache 2 served the original request.

It also looks like the remote browser closes the socket for the previous request
when it makes the next request during the infinite loop.

I suspect that Apache 1.3 was detecting that the remote client aborted its
request prior to passing the request on to the mod_jk handler.  And that
Apache 2.0 is not detecting that the remote client aborted the request before
passing the request to the mod_jk handler.

I have no proof of what causes this, but I have a suspicion that it is
related to timing.

Apache 2 can pass the request off to mod_jk in a much shorter time after the
request was initiated than Apache 1.3.  This could be due to switching from
the Apache 1.3 prefork model to the worker process/thread model in Apache 2.
By avoiding the overhead of forking a process the time it takes to pass
the request to mod_jk is much shorter, therefore it is less likely to
detect that the remote client has aborted the request before passing it
to mod_jk.

---------------------------------------------------------------------
To unsubscribe, e-mail: bugs-unsubscribe@httpd.apache.org
For additional commands, e-mail: bugs-help@httpd.apache.org


Mime
View raw message