UWC/CE hangs browser after opening mails with many attachments
Product versions:
# imsimta version
Sun Java(tm) System Messaging Server 6.3-6.03 (built Mar 14 2008; 64bit)
libimta.so 6.3-6.03 (built 17:15:08, Mar 14 2008; 64bit)
SunOS sunmail 5.10 Generic_127112-07 i86pc i386 i86pc
122794-21__UWC63-8.01_core__x86
126480-09__MSG63__x86-64
Problem:
One of our users uses UWC/CE heavily from different browsers, as she's often on the road and using a thick mail client is not practical. She found that e-mails with several attachments (from 3) cause a problem after the message is opened in UWC: the browser hangs and doesn't respond to any other clicks (i.e. Logout or click on a link to the same or another message folder).
Does anybody have suggestions what's wrong, or confirmation that others have such a problem and it's a known bug going to be fixed soon? :)
Details:
On several occasions the MSIE browser dies and Windows offers to use a debugger (usually if there are about 8 attached files). On one occasion it lived long enough to report: "A script on this page is causing Internet Explorer to run slowly. If it continues to run, your computer may become unresponsive. Do you want to abort the script?" Pressing "No" about 30 minutes ago caused the browser window to become "(Not Responding)" and consume 100% of a CPU (25% of a quad-core system).
During reproduction of the problem today I've checked MSIE 6 SP1, SP2, SP3; Firefox 3.0.1 on Windows XP and Win 2003 (32 and 64-bit) - they all exhibited such behavior.
This doesn't correlate with the size of attachments (they may be as small as 20-50k) or their content type (i.e. Office documents with no previews for UWC to display, or images with previews - regardless).
While checking the problem today I found that a couple of "mshttpd" and "webserverd" processes ran astray; seems that triggering the problem causes mshttpd to consume 100% of server CPU as well. When I found this, the server consumed well over 70 to 90% of a quad-core system (typically showing 360% using "top"). When I restarted the messaging and Sun webserver services, mshttpd refused to stop (stop-msg, kill -15, -3, -2, -1) and was only killed by a rude "kill -9". Then I tested the bug again (it remains in the browser despite the restart, although it became not-100% reproducible) and mshttpd popped up to 99-100% in "top", consuming one core.
While sniffing I found that the HTTP dialog stalls at such request-response as:
GET /uwc/webmail/history.html?mbox.msc?mbox=Admin&start=0&count=20&date=true&sortorder=R&sortby=recv&headerv=Content-type&sid=&lang=en&srch=ALL%20NOT%20deleted HTTP/1.1
+(I'm concerned by a double question mark in the URL /uwc/webmail/history.html?mbox.msc?mbox=Admin..., but it seems to work in other requests)+
Host: sunmail.cos.ru
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.2; ru; rv:1.9.0.1) Gecko/2008070208 Firefox/3.0.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.8,ru-ru;q=0.5,ru;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Referer: http://sunmail.cos.ru/uwc/webmail/msg_fs_lr.jsp?&rev=3&security=false&lang=en&popupLevel=undefined&cal=1
Cookie: JSESSIONID=932032362be970f54f76778c0e3a; iPlanetDirectoryPro=AQIC5wM2LY4SfczzmEFwS6JOqV5k1CLea6Dh0fd+WlDcSfE=@AAJTSQACMDI=#; amlbcookie=02; webmailsid=iXMRZk7Hw7I
HTTP/1.1 200 OK
Server: Sun-Java-System-Web-Server/7.0
Date: Wed, 01 Oct 2008 16:25:00 GMT
Content-type: text/html
+... (more headers and page contents follow)+
GET /uwc/webmail/mbox.msc?mbox=Admin&start=0&count=20&date=true&sortorder=R&sortby=recv&headerv=Content-type&sid=&lang=en&srch=ALL%20NOT%20deleted&rev=3&security=false&lang=en&popupLevel=undefined&cal=1 HTTP/1.1
Host: sunmail.cos.ru
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.2; ru; rv:1.9.0.1) Gecko/2008070208 Firefox/3.0.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.8,ru-ru;q=0.5,ru;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Referer: http://sunmail.cos.ru/uwc/webmail/history.html?mbox.msc?mbox=Admin&start=0&count=20&date=true&sortorder=R&sortby=recv&headerv=Content-type&sid=&lang=en&srch=ALL%20NOT%20deleted
Cookie: JSESSIONID=932032362be970f54f76778c0e3a; iPlanetDirectoryPro=AQIC5wM2LY4SfczzmEFwS6JOqV5k1CLea6Dh0fd+WlDcSfE=@AAJTSQACMDI=#; amlbcookie=02; webmailsid=iXMRZk7Hw7I
+(and this is the last request, no response for many minutes)+
Clicking on Logout afterwards also yields no response:
GET /uwc/base/UWCMain?op=logout HTTP/1.1
Host: sunmail.cos.ru
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.2; ru; rv:1.9.0.1) Gecko/2008070208 Firefox/3.0.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8..Accept-Language: en-us,en;q=0.8,ru-ru;q=0.5,ru;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Referer: http://sunmail.cos.ru/uwc/webmail/msg_fs_lr.jsp?&rev=3&security=false&lang=en&popupLevel=undefined&cal=1
Cookie: JSESSIONID=932032362be970f54f76778c0e3a; iPlanetDirectoryPro=AQIC5wM2LY4SfczzmEFwS6JOqV5k1CLea6Dh0fd+WlDcSfE=@AAJTSQACMDI=#; amlbcookie=02; webmailsid=iXMRZk7Hw7I
Occasionally the webserver (which hosts UWC servlet webapp) logs such interesting errors as attached below. I think that the UWC webapp requests for URLs translated to "mshttpd CE" time out, and the weberver tries to find a local resource, such as an "mbox.msc" file:
[01/Oct/2008:18:30:54] warning (22705): for host 194.67.186.125 trying to GET /uwc/webmail/mbox.msc, send-file reports: HTTP4142: can't find /var/opt/SUNWuwc/webmail/mbox.msc (File not found)
[01/Oct/2008:19:26:41] warning (12850): for host 192.168.129.135 trying to GET /uwc/webmail:8026/MailFilter/main/Logout, send-file reports: HTTP4142: can't find /var/opt/SUNWuwc/webmail:8026/MailFilter/main/Logout (File not found)
[01/Oct/2008:20:38:28] warning (12850): CORE3283: stderr: ClientAbortException: java.io.IOException: WEB8001: Write failed
[01/Oct/2008:20:38:28] warning (12850): CORE3283: stderr: at org.apache.coyote.tomcat5.OutputBuffer.realWriteBytes(OutputBuffer.java:408)
[01/Oct/2008:20:38:28] warning (12850): CORE3283: stderr: at org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:296)
[01/Oct/2008:20:38:28] warning (12850): CORE3283: stderr: at org.apache.coyote.tomcat5.OutputBuffer.writeBytes(OutputBuffer.java:436)
[01/Oct/2008:20:38:28] warning (12850): CORE3283: stderr: at org.apache.coyote.tomcat5.OutputBuffer.write(OutputBuffer.java:423)
[01/Oct/2008:20:38:28] warning (12850): CORE3283: stderr: at org.apache.coyote.tomcat5.CoyoteOutputStream.write(CoyoteOutputStream.java:107)
[01/Oct/2008:20:38:28] warning (12850): CORE3283: stderr: at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65)
[01/Oct/2008:20:38:28] warning (12850): CORE3283: stderr: at java.io.BufferedOutputStream.write(BufferedOutputStream.java:109)
[01/Oct/2008:20:38:28] warning (12850): CORE3283: stderr: at com.sun.uwc.common.auth.MailProxyFilter.doFilter(Unknown Source)
[01/Oct/2008:20:38:28] warning (12850): CORE3283: stderr: at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:210)
[01/Oct/2008:20:38:28] warning (12850): CORE3283: stderr: at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:178)
[01/Oct/2008:20:38:28] warning (12850): CORE3283: stderr: at com.sun.uwc.common.auth.IdentitySessionRefreshFilter.doFilter(Unknown Source)
[01/Oct/2008:20:38:28] warning (12850): CORE3283: stderr: at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:210)
[01/Oct/2008:20:38:28] warning (12850): CORE3283: stderr: at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:178)
[01/Oct/2008:20:38:28] warning (12850): CORE3283: stderr: at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:270)
...