Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 234515 - Ensure artifacts.jar and content.jar receive enough bandwidth
Summary: Ensure artifacts.jar and content.jar receive enough bandwidth
Status: RESOLVED WORKSFORME
Alias: None
Product: Community
Classification: Eclipse Foundation
Component: Servers (show other bugs)
Version: unspecified   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Eclipse Webmaster CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-05-28 20:47 EDT by Pascal Rapicault CLA
Modified: 2009-05-07 16:18 EDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Pascal Rapicault CLA 2008-05-28 20:47:07 EDT
For 3.4, even though people will likely keep on dl'ing the EPP packages. It is likely that they will try to browse the content of what is available on the ganymede update site which will cause the content.jar to be downloaded from the foundation server. 
To provide a sleek user experience I think that it may be good to ensure some minimal bandwidth for this file and also the artifacts.jar.
To be precise we are talking about the following files
   http://download.eclipse.org/releases/ganymede/content.jar
   http://download.eclipse.org/releases/ganymede/artifacts.jar
Comment 1 John Arthorne CLA 2008-05-28 21:30:02 EDT
I don't know much about web server administration, but knowing these files will be hit a lot and are static (rarely changed), you may be able to optimize for this to reduce disk and CPU load (such as keep them in memory). 
Comment 2 Denis Roy CLA 2008-05-30 10:24:57 EDT
First off, thanks for the head's up.  No one usually tells me about these things until everything grinds to a halt and I'm stuck wondering why  :)

So, let me guess, those two URLs are hard-coded into p2?  If so, why not use 'The Power Of Mirrors' and p2's ability to revert to download.eclipse.org if mirrors fail?

http://www.eclipse.org/downloads/download.php?file=/releases/ganymede/content.jar&protocol=http&format=xml

At any rate, I can't give specific files on one host any bandwidth priority over any other.  However, we will have plenty of bandwidth in June, July and August for the Ganymede launch, so I wouldn't worry about it.

However, I do assume that Eclipse caches those jar files on the local disk, and uses the http header 'If-Modified-Since' [1] to check the file for changes without re-fetching the file?  If not, shall I open a bug?

[1] See 14.25 of http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html
Comment 3 John Arthorne CLA 2008-05-30 10:51:12 EDT
Yes, we use caching on the local client for content.jar and only download again if it changes. Since it will only change three times a year, most clients will rarely download it.  We don't do the same caching currently for artifacts.jar, but this file is 47KB for all of Ganymede, and is only retrieved when someone performs an install operation, so further caching is likely not worth it.

Using mirrors to downloading these jars would be interesting, but there is a chicken/egg problem because the mirror definition URL you mention lives inside the content.jar file. Ooops. In the future I could imagine having a separate small file that gives the mirror definition and then we could perform mirror downloads. If we did that, we would also need to enable signing and signature verification for these jars to ensure the mirror isn't tampering with it (I suppose a man in the middle attacker could do that even without mirrors). This is something we didn't get to for this release.
Comment 4 Denis Roy CLA 2008-05-30 10:56:53 EDT
Great. You're caching the biggest jar (which is only about 1 MB) so, IMHO, this is a non-issue that likely doesn't warrant all the hassle of mirrors. 

Thanks for the head's up.  I'm closing as worksforme as our systems shouldn't have any problems handling this.  Of course, feel free to reopen June 25 if I'm proven wrong  :)
Comment 5 Denis Roy CLA 2009-05-07 16:18:33 EDT
Moving all these to Servers.