I'm not sure that this is of any help or even applies to lift, but we
had once a very similar situation with a corporate application.
Difference was that the problem occurred when you were working slower.
Here's the description of the problem and what the reason was. When we
ran our application in on dev servers, everything was working fine,
never any problems, never the server unavailable message. Even on the
test servers for the client there was never any problem and everything
was working fine, even though this time the app was using HTTPS. When
we put the application into production (HTTPS as well), we received
complaints similar to yours. Ok, differences between dev/test and
prod? Almost none, server setup the same (tomcat/apache at the time),
same OS, same build. Differences were only in network routing and that
the production was using a loadbalancer. Now that load balancer was a
pretty expensive piece of hardware, we used sticky sessions and the
app was built that it should even be able to handle session failover
gracefully (only cashing stuff in the session). And strangely we still
couldn't reproduce the bug even though the allowed us to test in the
production environment...
Now the fun started. It took some time to actually reproduce the bug,
because it happened only if you waited long enough on a page that is
using AJAX. It took a couple of minutes of waiting (doing nothing that
triggers AJAX) on a page before you could get the server unavailable
message when starting to use AJAX again which had to timeout as well
first. The wait time is not completely unreasonable (if you got a
complex form to fill, that's a reasonable time, depending on how your
site is structured) and after that, the AJAX part of the page was dead
(only reload could get you going again).
After being able to reproduce the bug, we set to find the source of
the problem. It turned out that the following things happened: Apache
has a configured connection pool and a configured connection keepalive
(sent in HTTP response header). It doesn't honor the keepalive though,
as long as you have enough spare connections in the pool (it'll simply
keep the timed out connections active). The loadbalancer on the other
hand is not that friendly and shuts the connections down after the
configured keepalive times out. That's the reason why it never showed
in dev and test and only with the loadbalancer (which is advertised as
being transparent) in place.
Ok, interesting story so far, but why does IE6 barf on it, connection
closing shouldn't be the end of the world, it happens often enough.
The problem is that IE6 automatic removal of SSLd keepalive
connections is seriously broken. It actually tries to reuse timed out
connections from the internal connection pool (IIRC, also see [1], or
google), which will not get you anywhere on the server, because the
connection has been shut down.
Resolution for us was to set the keepalive to a high value (half an
hour or so, the default is 300/5 minutes). This was also partially
because we were not allowed to touch the configuration of the
loadbalancer. [1] describes a different solution.
To find the problem we used SysInternals TCPView (free) to find out
what the issue was on the network, but that got us only that far. The
missing piece was SysInternals TDIMon (free), that showed us IE6s
internal connection pool events. TDIMon seems to be discontinued (at
least I couldn't find it on the site), and I haven't had to use it in
a while, so I don't know which application is actually filling the gap
or whether you can download it somewhere else (I don't know if the old
version is Vista compatible but it worked fine on XP).

Hope that helps and that you find a solution (that was one of the
harder bugs I ever had to track down, thus the extensive writeup).

Cheers,
-D

[1] http://extjs.com/forum/showthread.php?t=45673
[2] http://technet.microsoft.com/en-us/sysinternals/default.aspx

On Mar 25, 2:22 am, "Charles F. Munat" <c...@munat.com> wrote:
> I have a survey online that updates the server via AJAX when individual
> form fields are blurred. Works beautifully in Firefox, Opera, IE7, etc.
>
> But in IE6 there are some serious problems. Unfortunately, the users of
> this survey are corporate, and some of them are forced to use IE6 (DEATH
> to lazy sysadmins!). What happens is that the saves sometimes work, and
> other times do not. Occasionally, a "server unavailable message" pops
> up, and after that nothing seems to work. I have a couple of customers
> who are very seriously pissed off because they've had to re-enter data
> four and five times.
>
> I suspect that this has something to do with IE6 limitations wrt number
> of browser connections available to AJAX. If they slow down a little,
> the problem diminishes.
>
> Anyone ever try something like this before? Anyone have any suggestions?
> Why only IE6? Is there a workaround? (I can't afford to rebuild the
> whole thing for one or two people.)
>
> Thanks!
>
> Chas.

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Lift" group.
To post to this group, send email to liftweb@googlegroups.com
To unsubscribe from this group, send email to 
liftweb+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to