[medusa] Re: medusa and apache proxy -more info

Donovan Baarda abo@m...
Tue, 17 Apr 2001 11:27:51 +1000 (EST)

Quoting rprice@u...:

> With more testing we've found out that medusa works differenetly on
> Solaris (sunOS5) and Linux (I'm using Mandrake 7.1) at least when
> using the Linux telnet client:
> On solaris using telnet the server closes the connection immediately
> after the </HTML> when using HTTP/1.0. When using HTTP/1.1 it will
> keep connected. Both as expected.
> On linux the Medusa server will wait 30 seconds before closing the
> session when using HTTP/1.0 and keeps the connection open much longer
> using HTTP/1.1.

The 30 sec delay sounds like the default medusa polling time on select. I don't 
know _why_ it would require another iteration through the loop for your 
application, but is it possible you have readable/writeable status changing 
around about the time you service the final push() for the connection. When the 
delay happens, it might not be quite ready the select, so it is excluded until 
the next iteration, when it gets selected immediately. Remember the 
readable/writeable test is performed once per iteration through the loop, so if 
something is not ready at the start of the loop, it will be excluded from the 
select until the next iteration.

I suspect that if you change your polling time from the default, you 
can "adjust" the delay. Also, establishing another connection while one 
is "delayed" will kick the select loop, causing the delay to end immediately. 
Adjusting the poll time might be a quick fix, but I suspect you need to look at 
your readable/writeable tests.

ABO: finger abo@m... for more information.