Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-6457

Green balls loading slow on dashboard

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Minor
    • Resolution: Fixed
    • Component/s: greenballs-plugin
    • Labels:
      None
    • Environment:
      Green balls 1.6, Hudson ver. 1.353
    • Similar Issues:

      Description

      When opening the dashboard page, the green ball icons are always the last ones to load. So for half a second one can see 'success' alt-text instead. After a while all icons are loaded properly.

        Attachments

          Activity

          Hide
          asgeirn asgeirn added a comment -

          Could you provide some details on what browser you use and what servlet engine you run Hudson on?

          Green Balls uses HTTP redirection trickery to replace the blue balls with green ones. These should cache in your browser, making them load equally fast as other ones after the initial page view.

          Would you be able to trace and verify HTTP request and response headers? They would be very helpful in inspecting this.

          Show
          asgeirn asgeirn added a comment - Could you provide some details on what browser you use and what servlet engine you run Hudson on? Green Balls uses HTTP redirection trickery to replace the blue balls with green ones. These should cache in your browser, making them load equally fast as other ones after the initial page view. Would you be able to trace and verify HTTP request and response headers? They would be very helpful in inspecting this.
          Hide
          grzegorz_oledzki grzegorz_oledzki added a comment -

          Sure.

          The headers for multiple requests for some images. As reported by Firebug. I attach the screen shot of Firebug Net console for images after the 'success' issue.

          1.

          Request
          GET /static/b1286c3d/images/24x24/blue.gif HTTP/1.1
          Host: [...]
          User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.2) Gecko/20100316 Firefox/3.6.2
          Accept: image/png,image/*;q=0.8,*/*;q=0.5
          Accept-Language: en-us,en;q=0.7,pl;q=0.3
          Accept-Encoding: gzip,deflate
          Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
          Keep-Alive: 115
          Connection: keep-alive
          Referer: http://[...]
          Cookie: iconSize=24x24; screenResolution=2048x1152
          Cache-Control: max-age=0
          
          Response
          HTTP/1.1 302 Found
          Server: Winstone Servlet Engine v0.9.10
          Cache-Control: public, s-maxage=86400
          Expires: Sat, 08 May 2010 13:52:44 GMT
          Location: http://[...]/plugin/greenballs/24x24/green.gif
          Content-Length: 0
          Connection: Keep-Alive
          Date: Fri, 07 May 2010 13:52:44 GMT
          X-Powered-By: Servlet/2.5 (Winstone/0.9.10)
          
          Cache
          Last Modified	Fri May 07 2010 15:52:45 GMT+0200 (Central European Daylight Time)
          Last Fetched	Fri May 07 2010 15:52:45 GMT+0200 (Central European Daylight Time)
          Expires	Sat May 08 2010 15:52:43 GMT+0200 (Central European Daylight Time)
          Data Size	0
          Fetch Count	56
          Device	disk
          

          2.

          Request
          GET /plugin/greenballs/24x24/green.gif HTTP/1.1
          Host: [...]
          User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.2) Gecko/20100316 Firefox/3.6.2
          Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
          Accept-Language: en-us,en;q=0.7,pl;q=0.3
          Accept-Encoding: gzip,deflate
          Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
          Keep-Alive: 115
          Connection: keep-alive
          Referer: http://[...]
          Cookie: iconSize=24x24; screenResolution=2048x1152
          If-Modified-Since: Mon, 01 Feb 2010 14:47:02 GMT
          Cache-Control: max-age=0
          
          Response
          HTTP/1.1 304 Not Modified
          Server: Winstone Servlet Engine v0.9.10
          Cache-Control: public, s-maxage=86400
          Content-Length: 0
          Connection: Keep-Alive
          Content-Type: text/html;charset=ISO-8859-1
          Date: Fri, 07 May 2010 13:52:45 GMT
          X-Powered-By: Servlet/2.5 (Winstone/0.9.10)
          
          Cache
          Last Modified	Fri May 07 2010 15:52:45 GMT+0200 (Central European Daylight Time)
          Last Fetched	Fri May 07 2010 15:52:45 GMT+0200 (Central European Daylight Time)
          Expires	Thu Jan 01 1970 01:00:00 GMT+0100 (Central European Standard Time)
          Data Size	794
          Fetch Count	56
          Device	disk
          

          3.

          Request
          GET /static/b1286c3d/images/title.png HTTP/1.1
          Host: [...]
          User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.2) Gecko/20100316 Firefox/3.6.2
          Accept: image/png,image/*;q=0.8,*/*;q=0.5
          Accept-Language: en-us,en;q=0.7,pl;q=0.3
          Accept-Encoding: gzip,deflate
          Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
          Keep-Alive: 115
          Connection: keep-alive
          Referer: http://[...]
          Cookie: iconSize=24x24; screenResolution=2048x1152
          If-Modified-Since: Thu, 01 Apr 2010 17:41:13 GMT
          Cache-Control: max-age=0
          
          Response
          HTTP/1.1 304 Not Modified
          Server: Winstone Servlet Engine v0.9.10
          Content-Length: 0
          Connection: Keep-Alive
          Content-Type: text/html;charset=ISO-8859-1
          Date: Fri, 07 May 2010 13:52:45 GMT
          X-Powered-By: Servlet/2.5 (Winstone/0.9.10)
          
          Cache
          Last Modified	Fri May 07 2010 15:52:46 GMT+0200 (Central European Daylight Time)
          Last Fetched	Fri May 07 2010 15:52:46 GMT+0200 (Central European Daylight Time)
          Expires	Fri May 06 2011 15:28:12 GMT+0200 (Central European Daylight Time)
          Data Size	4093
          Fetch Count	26
          Device	disk
          

          I hope it helps. Please ask if you miss any information.

          Show
          grzegorz_oledzki grzegorz_oledzki added a comment - Sure. The headers for multiple requests for some images. As reported by Firebug. I attach the screen shot of Firebug Net console for images after the 'success' issue. 1. Request GET / static /b1286c3d/images/24x24/blue.gif HTTP/1.1 Host: [...] User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.2) Gecko/20100316 Firefox/3.6.2 Accept: image/png,image /*;q=0.8,*/ *;q=0.5 Accept-Language: en-us,en;q=0.7,pl;q=0.3 Accept-Encoding: gzip,deflate Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 Keep-Alive: 115 Connection: keep-alive Referer: http: //[...] Cookie: iconSize=24x24; screenResolution=2048x1152 Cache-Control: max-age=0 Response HTTP/1.1 302 Found Server: Winstone Servlet Engine v0.9.10 Cache-Control: public , s-maxage=86400 Expires: Sat, 08 May 2010 13:52:44 GMT Location: http: //[...]/plugin/greenballs/24x24/green.gif Content-Length: 0 Connection: Keep-Alive Date: Fri, 07 May 2010 13:52:44 GMT X-Powered-By: Servlet/2.5 (Winstone/0.9.10) Cache Last Modified Fri May 07 2010 15:52:45 GMT+0200 (Central European Daylight Time) Last Fetched Fri May 07 2010 15:52:45 GMT+0200 (Central European Daylight Time) Expires Sat May 08 2010 15:52:43 GMT+0200 (Central European Daylight Time) Data Size 0 Fetch Count 56 Device disk 2. Request GET /plugin/greenballs/24x24/green.gif HTTP/1.1 Host: [...] User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.2) Gecko/20100316 Firefox/3.6.2 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: en-us,en;q=0.7,pl;q=0.3 Accept-Encoding: gzip,deflate Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 Keep-Alive: 115 Connection: keep-alive Referer: http: //[...] Cookie: iconSize=24x24; screenResolution=2048x1152 If-Modified-Since: Mon, 01 Feb 2010 14:47:02 GMT Cache-Control: max-age=0 Response HTTP/1.1 304 Not Modified Server: Winstone Servlet Engine v0.9.10 Cache-Control: public , s-maxage=86400 Content-Length: 0 Connection: Keep-Alive Content-Type: text/html;charset=ISO-8859-1 Date: Fri, 07 May 2010 13:52:45 GMT X-Powered-By: Servlet/2.5 (Winstone/0.9.10) Cache Last Modified Fri May 07 2010 15:52:45 GMT+0200 (Central European Daylight Time) Last Fetched Fri May 07 2010 15:52:45 GMT+0200 (Central European Daylight Time) Expires Thu Jan 01 1970 01:00:00 GMT+0100 (Central European Standard Time) Data Size 794 Fetch Count 56 Device disk 3. Request GET / static /b1286c3d/images/title.png HTTP/1.1 Host: [...] User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.2) Gecko/20100316 Firefox/3.6.2 Accept: image/png,image /*;q=0.8,*/ *;q=0.5 Accept-Language: en-us,en;q=0.7,pl;q=0.3 Accept-Encoding: gzip,deflate Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 Keep-Alive: 115 Connection: keep-alive Referer: http: //[...] Cookie: iconSize=24x24; screenResolution=2048x1152 If-Modified-Since: Thu, 01 Apr 2010 17:41:13 GMT Cache-Control: max-age=0 Response HTTP/1.1 304 Not Modified Server: Winstone Servlet Engine v0.9.10 Content-Length: 0 Connection: Keep-Alive Content-Type: text/html;charset=ISO-8859-1 Date: Fri, 07 May 2010 13:52:45 GMT X-Powered-By: Servlet/2.5 (Winstone/0.9.10) Cache Last Modified Fri May 07 2010 15:52:46 GMT+0200 (Central European Daylight Time) Last Fetched Fri May 07 2010 15:52:46 GMT+0200 (Central European Daylight Time) Expires Fri May 06 2011 15:28:12 GMT+0200 (Central European Daylight Time) Data Size 4093 Fetch Count 26 Device disk I hope it helps. Please ask if you miss any information.
          Hide
          grzegorz_oledzki grzegorz_oledzki added a comment -

          I am not an expert in HTTP status codes, but shouldn't the request for 'blue.gif' result in 301 Moved Permanently instead of 302 Found?

          Show
          grzegorz_oledzki grzegorz_oledzki added a comment - I am not an expert in HTTP status codes, but shouldn't the request for 'blue.gif' result in 301 Moved Permanently instead of 302 Found ?
          Hide
          asgeirn asgeirn added a comment -

          Try the attached version – I've implemented the color change as servlet forwarding instead of redirection.

          Does this change the behavior for you?

          Show
          asgeirn asgeirn added a comment - Try the attached version – I've implemented the color change as servlet forwarding instead of redirection. Does this change the behavior for you?
          Hide
          grzegorz_oledzki grzegorz_oledzki added a comment -

          Thanks a lot for your effort!

          I've tried your snapshot build and it works. I mean, I wasn't able to reproduce the problem anymore.
          All request for images result in 304 Not Modified. Great!

          Show
          grzegorz_oledzki grzegorz_oledzki added a comment - Thanks a lot for your effort! I've tried your snapshot build and it works. I mean, I wasn't able to reproduce the problem anymore. All request for images result in 304 Not Modified . Great!
          Hide
          scm_issue_link SCM/JIRA link daemon added a comment -

          Code changed in hudson
          User: : asgeirn
          Path:
          trunk/hudson/plugins/greenballs/pom.xml
          trunk/hudson/plugins/greenballs/src/main/java/hudson/plugins/greenballs/GreenBallFilter.java
          trunk/hudson/plugins/greenballs/src/main/java/hudson/plugins/greenballs/PluginImpl.java
          trunk/hudson/plugins/greenballs/src/test/java/hudson/plugins/greenballs/GreenBallIntegrationTest.java
          http://jenkins-ci.org/commit/32699
          Log:
          Fixes for JENKINS-6457 and JENKINS-6838.

          Show
          scm_issue_link SCM/JIRA link daemon added a comment - Code changed in hudson User: : asgeirn Path: trunk/hudson/plugins/greenballs/pom.xml trunk/hudson/plugins/greenballs/src/main/java/hudson/plugins/greenballs/GreenBallFilter.java trunk/hudson/plugins/greenballs/src/main/java/hudson/plugins/greenballs/PluginImpl.java trunk/hudson/plugins/greenballs/src/test/java/hudson/plugins/greenballs/GreenBallIntegrationTest.java http://jenkins-ci.org/commit/32699 Log: Fixes for JENKINS-6457 and JENKINS-6838 .

            People

            Assignee:
            asgeirn asgeirn
            Reporter:
            grzegorz_oledzki grzegorz_oledzki
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: