Issue Details (XML | Word | Printable)

Key: CONF-11512
Type: Bug Bug
Status: Resolved Resolved
Resolution: Fixed
Priority: Major Major
Assignee: Matt Ryall [Atlassian]
Reporter: Roberto Dominguez
Votes: 2
Watchers: 2
Operations

Add/Edit UI Mockup to this issue
If you were logged in you would be able to see more operations.
Confluence

requests to fake.gif (defined in menu.css) causes SocketException in server when requested by IE6

Created: 19/Apr/08 11:28 AM   Updated: 13/May/08 12:02 AM
Component/s: Performance, Web Interface, Web Interface - Stylesheets
Affects Version/s: 2.8
Fix Version/s: 2.8.1

Time Tracking:
Not Specified

Environment: Found this only when using IE6..

Participants: Don Willis [Atlassian], Issa Gorissen, Matt Ryall [Atlassian] and Roberto Dominguez
Since last comment: 29 weeks, 4 days ago
Resolution Date: 13/May/08 12:02 AM
Labels:


 Description  « Hide
Looks like the hack in menu.css could have side efects...

Using a plain page, got this one when rendering in IE6:

Apr 19, 2008 9:14:41 AM org.apache.catalina.core.StandardHostValve status
WARNING: Exception Processing ErrorPage[errorCode=404, location=/fourohfour.action]
ClientAbortException:  java.net.SocketException: Broken pipe
	at org.apache.catalina.connector.OutputBuffer.doFlush(OutputBuffer.java:327)
	at org.apache.catalina.connector.OutputBuffer.flush(OutputBuffer.java:293)
	at org.apache.catalina.connector.Response.flushBuffer(Response.java:539)
	at org.apache.catalina.core.StandardHostValve.status(StandardHostValve.java:287)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)
	at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
	at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
	at java.lang.Thread.run(Thread.java:613)
Caused by: java.net.SocketException: Broken pipe
	at java.net.SocketOutputStream.socketWrite0(Native Method)
	at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92)
	at java.net.SocketOutputStream.write(SocketOutputStream.java:136)
	at org.apache.coyote.http11.InternalOutputBuffer.realWriteBytes(InternalOutputBuffer.java:747)
	at org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:432)
	at org.apache.coyote.http11.InternalOutputBuffer.flush(InternalOutputBuffer.java:305)
	at org.apache.coyote.http11.Http11Processor.action(Http11Processor.java:992)
	at org.apache.coyote.Response.action(Response.java:183)
	at org.apache.catalina.connector.OutputBuffer.doFlush(OutputBuffer.java:322)
	... 13 more

Sometimes there are more. Thing is that IE6 make several requests:

192.168.0.150 - - [19/Apr/2008:09:14:41 -0700] "GET /display/EMPTY/Home HTTP/1.1" 200 21643 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
192.168.0.150 - - [19/Apr/2008:09:14:41 -0700] "GET /s/1318/1/3/_/styles/combined.css?spaceKey=EMPTY HTTP/1.1" 200 314 "http://tepoztlan:20280/display/EMPTY/Home" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
192.168.0.150 - - [19/Apr/2008:09:14:41 -0700] "GET /s/1318/1/3/_/styles/colors.css?spaceKey=EMPTY HTTP/1.1" 200 5849 "http://tepoztlan:20280/display/EMPTY/Home" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
192.168.0.150 - - [19/Apr/2008:09:14:41 -0700] "GET /s/1318/1/1.0/_/images/icons/fake.gif HTTP/1.1" 404 - "http://tepoztlan:20280/display/EMPTY/Home" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
192.168.0.150 - - [19/Apr/2008:09:14:41 -0700] "GET /s/1318/1/1.0/_/images/icons/fake.gif HTTP/1.1" 404 - "http://tepoztlan:20280/display/EMPTY/Home" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
192.168.0.150 - - [19/Apr/2008:09:14:41 -0700] "GET /s/1318/1/1.0/_/images/icons/fake.gif HTTP/1.1" 404 - "http://tepoztlan:20280/display/EMPTY/Home" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
192.168.0.150 - - [19/Apr/2008:09:14:41 -0700] "GET /s/1318/1/1.0/_/images/icons/fake.gif HTTP/1.1" 404 - "http://tepoztlan:20280/display/EMPTY/Home" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
192.168.0.150 - - [19/Apr/2008:09:14:41 -0700] "GET /s/1318/1/1.0/_/images/icons/fake.gif HTTP/1.1" 404 - "http://tepoztlan:20280/display/EMPTY/Home" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
192.168.0.150 - - [19/Apr/2008:09:14:41 -0700] "GET /s/1318/1/1.0/_/images/icons/fake.gif HTTP/1.1" 404 - "http://tepoztlan:20280/display/EMPTY/Home" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
192.168.0.150 - - [19/Apr/2008:09:14:41 -0700] "GET /s/1318/1/1.0/_/images/icons/fake.gif HTTP/1.1" 404 - "http://tepoztlan:20280/display/EMPTY/Home" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
192.168.0.150 - - [19/Apr/2008:09:14:41 -0700] "GET /s/1318/1/1.0/_/images/icons/fake.gif HTTP/1.1" 404 - "http://tepoztlan:20280/display/EMPTY/Home" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
192.168.0.150 - - [19/Apr/2008:09:14:41 -0700] "GET /s/1318/1/1.0/_/images/icons/fake.gif HTTP/1.1" 404 - "http://tepoztlan:20280/display/EMPTY/Home" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
192.168.0.150 - - [19/Apr/2008:09:14:41 -0700] "GET /s/1318/1/1.0/_/images/icons/fake.gif HTTP/1.1" 404 - "http://tepoztlan:20280/display/EMPTY/Home" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
192.168.0.150 - - [19/Apr/2008:09:14:41 -0700] "GET /s/1318/1/1.0/_/images/icons/fake.gif HTTP/1.1" 404 - "http://tepoztlan:20280/display/EMPTY/Home" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
192.168.0.150 - - [19/Apr/2008:09:14:41 -0700] "GET /s/1318/1/1.0/_/images/icons/fake.gif HTTP/1.1" 404 - "http://tepoztlan:20280/display/EMPTY/Home" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
192.168.0.150 - - [19/Apr/2008:09:14:41 -0700] "GET /s/1318/1/1.0/_/images/icons/fake.gif HTTP/1.1" 404 - "http://tepoztlan:20280/display/EMPTY/Home" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
192.168.0.150 - - [19/Apr/2008:09:14:41 -0700] "GET /s/1318/1/1.0/_/images/icons/fake.gif HTTP/1.1" 404 - "http://tepoztlan:20280/display/EMPTY/Home" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
192.168.0.150 - - [19/Apr/2008:09:14:41 -0700] "GET /s/1318/1/1.0/_/images/icons/fake.gif HTTP/1.1" 404 - "http://tepoztlan:20280/display/EMPTY/Home" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
192.168.0.150 - - [19/Apr/2008:09:14:41 -0700] "GET /s/1318/1/1.0/_/images/icons/fake.gif HTTP/1.1" 404 - "http://tepoztlan:20280/display/EMPTY/Home" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
192.168.0.150 - - [19/Apr/2008:09:14:41 -0700] "GET /s/1318/1/1.0/_/images/icons/fake.gif HTTP/1.1" 404 - "http://tepoztlan:20280/display/EMPTY/Home" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
192.168.0.150 - - [19/Apr/2008:09:14:41 -0700] "GET /s/1318/1/1.0/_/images/icons/fake.gif HTTP/1.1" 404 - "http://tepoztlan:20280/display/EMPTY/Home" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"

Many requests to a non existing image is going to invoke the fourofour.action just for free. Now, imagine the multiple requests made by IE6...



 All   Comments   Work Log   Change History      Sort Order: Ascending order - Click to sort in descending order
Issa Gorissen added a comment - 08/May/08 07:12 AM - edited
This issue is an easy one.

In menu.css there is this definition

.ajs-menu-bar div.ajs-drop-down a {
    background: url(../../../images/icons/fake.gif) no-repeat .5em 50%;
    border: none;
    display: block;
    line-height: 2;
    padding: 0 1em 0 28px;
    margin: 0;
    text-decoration: none;
    position: relative;
    white-space: nowrap;
}

To fix this bug, either patch confluence by adding the missing image fake.gif in edit-webapp for example or modify the menu.css file and remove the background field.


Matt Ryall [Atlassian] added a comment - 08/May/08 08:10 AM
Issa, you're correct about the cause – thanks for the information.

We need to do a fair bit of testing in different configurations and browsers before we'll be confident that removing this line is safe for all our customers. It was introduced as part of a compatibility plan for our menu styling to work properly in IE6 and 7.

Please let us know if you experience any problems with your workaround. We'll update this issue once the problem is tested and resolved.


Issa Gorissen added a comment - 08/May/08 08:18 AM
Well, I do not have the fake.gif image, so I did try removing the background field from menu.css - there are no errors in the logs anymore, tested with IE6 and Weblogic 10.0 MP1.