<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>The Gitorious Blog</title>
	<atom:link href="http://blog.gitorious.org/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.gitorious.org</link>
	<description></description>
	<lastBuildDate>Wed, 08 Feb 2012 06:03:13 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='blog.gitorious.org' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://1.gravatar.com/blavatar/d042fdf355205cf1c86adce5e94f7f8b?s=96&#038;d=http%3A%2F%2Fs2.wp.com%2Fi%2Fbuttonw-com.png</url>
		<title>The Gitorious Blog</title>
		<link>http://blog.gitorious.org</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://blog.gitorious.org/osd.xml" title="The Gitorious Blog" />
	<atom:link rel='hub' href='http://blog.gitorious.org/?pushpress=hub'/>
		<item>
		<title>Downtime today at 14 CET [edit: completed]</title>
		<link>http://blog.gitorious.org/2012/02/02/downtime-today-at-14-cet/</link>
		<comments>http://blog.gitorious.org/2012/02/02/downtime-today-at-14-cet/#comments</comments>
		<pubDate>Thu, 02 Feb 2012 09:58:56 +0000</pubDate>
		<dc:creator>Marius Mathiesen</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.gitorious.org/?p=500</guid>
		<description><![CDATA[We need to add some more disk to our servers, which means we&#8217;ll have some downtime starting at 14 CET today. We&#8217;ll update this post as we proceed. Updates: 14:10: the physical servers are rebooting 14:40: the host was giving us a hard time, but the virtual machines are finally booting now 14:41: the file [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.gitorious.org&amp;blog=7191337&amp;post=500&amp;subd=gitorious&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>We need to add some more disk to our servers, which means we&#8217;ll have some downtime starting at 14 CET today. We&#8217;ll update this post as we proceed.</p>
<p><strong>Updates:</strong></p>
<ul>
<li>14:10: the physical servers are rebooting</li>
<li>14:40: the host was giving us a hard time, but the virtual machines are finally booting now</li>
<li>14:41: the file systems are being checked, currently at 2 percent.</li>
<li>14:44: 4 percent</li>
<li>14:47: 6,5%</li>
<li>15:04: 20</li>
<li>15:13: 35%</li>
<li>15:20: 50%</li>
<li>15:29: 66.6%</li>
<li>15:35: 70%</li>
<li>15:55: 75%</li>
<li>15:58: 80%</li>
<li>16:50: the check is done, we&#8217;re working on getting the servers online</li>
<li>16:52: there are some network issues, a network expert is looking into i</li>
<li>17:25: We&#8217;re back! Send an email to support@gitorious.org if you&#8217;re having problems.</li>
</ul>
<p>&nbsp;</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/gitorious.wordpress.com/500/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/gitorious.wordpress.com/500/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/gitorious.wordpress.com/500/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/gitorious.wordpress.com/500/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/gitorious.wordpress.com/500/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/gitorious.wordpress.com/500/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/gitorious.wordpress.com/500/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/gitorious.wordpress.com/500/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/gitorious.wordpress.com/500/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/gitorious.wordpress.com/500/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/gitorious.wordpress.com/500/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/gitorious.wordpress.com/500/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/gitorious.wordpress.com/500/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/gitorious.wordpress.com/500/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.gitorious.org&amp;blog=7191337&amp;post=500&amp;subd=gitorious&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.gitorious.org/2012/02/02/downtime-today-at-14-cet/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/983dc27817acd9318b9d67e2e320c96d?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">zmalltalker</media:title>
		</media:content>
	</item>
		<item>
		<title>Private repositories</title>
		<link>http://blog.gitorious.org/2011/12/08/private-repositories/</link>
		<comments>http://blog.gitorious.org/2011/12/08/private-repositories/#comments</comments>
		<pubDate>Thu, 08 Dec 2011 11:03:46 +0000</pubDate>
		<dc:creator>Christian Johansen</dc:creator>
				<category><![CDATA[Upcoming features]]></category>

		<guid isPermaLink="false">http://blog.gitorious.org/?p=494</guid>
		<description><![CDATA[For a long time, people have asked that Gitorious support a fine-grained permissions system where repositories can be made private and access granted only to select users/groups. We have decided to develop this feature for Gitorious, and we need your help. Some of you may know of the infamous merge request #115. This partially solves [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.gitorious.org&amp;blog=7191337&amp;post=494&amp;subd=gitorious&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>For a long time, people have asked that Gitorious support a fine-grained permissions system where repositories can be made private and access granted only to select users/groups. We have decided to develop this feature for Gitorious, and we need your help.</p>
<p>Some of you may know of the <a href="https://gitorious.org/gitorious/mainline/merge_requests/115">infamous merge request #115</a>. This partially solves the problem at hand, but unfortunately not in a way that we can accept responsibility for. However, the discussion around this merge request spawned the idea of a fund-raiser, and that&#8217;s how we are going to do this.</p>
<h2>How, what and when</h2>
<p>Technically, this work will be based off of <a href="https://gitorious.org/gitorious/mainline/merge_requests/168">Rodrigo Rosas&#8217; branch</a> which replaces Gitorious&#8217; authentication implementation with the <a href="http://blog.plataformatec.com.br/tag/devise/">Devise</a> gem.</p>
<p>On top of this system we will implement role-based authorisation that extends to pushing and pulling git repositories, as well as scoping all user generated data on the web site (project information, repository activity, events of various kinds).</p>
<p>We will put as much authorization logic as possible in the generic layer already in place in Gitorious so that it can easily be utilized regardless of whether you are using database backed logins, LDAP or the upcoming Atlassian Crowd SSO support. This means you can use LDAP groups to manage access to Gitorious content.</p>
<p>We are ready to start this work early 2012, given proper funding. We have estimated this feature to roughly 4 weeks of work. Using our reduced hourly rate offered to <a href="http://gitorious.com/local_install">Local Install</a> customers, this comes out to $24000.</p>
<p>Private repositories will be developed and shipped as part of Gitorious mainline. It will <strong>not</strong> be offered as a free service on gitorious.org. This means we will ship some sort of configuration switch controlling whether or not this system is available in a given installation.</p>
<p>Is your company interested in using this feature? How about helping funding it? Get in touch, let us know the amount you would like to contribute, and if you have any specific features you would want us to account for. You can help fund this project anonymously if you so wish, but we recommend you allow us to tell the world what a great company you are for helping a free software project becoming even better!</p>
<p>Any contribution is appreciated. Email support@gitorious.org if you are interested. I will keep you guys updated on the donation progress here on the blog.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/gitorious.wordpress.com/494/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/gitorious.wordpress.com/494/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/gitorious.wordpress.com/494/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/gitorious.wordpress.com/494/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/gitorious.wordpress.com/494/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/gitorious.wordpress.com/494/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/gitorious.wordpress.com/494/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/gitorious.wordpress.com/494/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/gitorious.wordpress.com/494/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/gitorious.wordpress.com/494/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/gitorious.wordpress.com/494/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/gitorious.wordpress.com/494/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/gitorious.wordpress.com/494/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/gitorious.wordpress.com/494/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.gitorious.org&amp;blog=7191337&amp;post=494&amp;subd=gitorious&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.gitorious.org/2011/12/08/private-repositories/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/6e7ddb6784d284c385f3f0f307ebf90d?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">cjohansen</media:title>
		</media:content>
	</item>
		<item>
		<title>A little help from our friends</title>
		<link>http://blog.gitorious.org/2011/10/20/a-little-help-from-our-friends/</link>
		<comments>http://blog.gitorious.org/2011/10/20/a-little-help-from-our-friends/#comments</comments>
		<pubDate>Thu, 20 Oct 2011 14:07:51 +0000</pubDate>
		<dc:creator>Marius Mathiesen</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.gitorious.org/?p=462</guid>
		<description><![CDATA[A few months ago, Axis Communications, the world&#8217;s leading expert in network video, got in touch with us to discuss some features they were missing in their local Gitorious installation. We agreed that the Gitorious team would develop these features on a consulting basis for them, and today we&#8217;re proud to announce that these features [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.gitorious.org&amp;blog=7191337&amp;post=462&amp;subd=gitorious&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>A few months ago, <a href="http://www.axis.com/">Axis Communications</a>, the world&#8217;s leading expert in network video, got in touch with us to discuss some features they were missing in their local Gitorious installation. We agreed that the Gitorious team would develop these features on a consulting basis for them, and today we&#8217;re proud to announce that these features are available for all users of Gitorious; be it on gitorious.org or on one of the hundreds of self-hosted Gitorious installations out there.</p>
<p>We are especially excited to announce these features since they demonstrate one of the greatest benefits of free software: that features developed for one user of the software is made available to all other users of the software. We are very grateful to Axis Communications for hiring us to develop these features, and we&#8217;re equally grateful that they decided to share the new features with other Gitorious users. Thanks!</p>
<p><strong><em>Here&#8217;s a short summary of what&#8217;s new:</em></strong></p>
<h2>Graphical log view</h2>
<p>Once you work with more than a single branch in Git, you&#8217;ll feel the need to visualize your repository&#8217;s history. There are <a href="http://git-scm.com/tools">various tools on the desktop that do this</a>.</p>
<p>Starting today, you&#8217;ll find a link from the commit log for any Git branch or tag in Gitorious to a graphical representation of the log. Here&#8217;s a screenshot of how it looks for Gitorious itself:</p>
<p><a href="http://gitorious.files.wordpress.com/2011/09/graph.png"><img class="alignnone size-full wp-image-463" title="graph" src="http://gitorious.files.wordpress.com/2011/09/graph.png?w=600" alt=""   /></a></p>
<p>Click on the commit message to jump to a specific commit, click on the commit SHA1 to view a graph starting from that commit.</p>
<p>The graph does not require any browser plugins to work, and should work on any fairly modern web browser. We developed two tools that work together to generate the graph view:</p>
<ul>
<li><a href="https://gitorious.org/capillary/capillary_rb">capillary.rb</a> generates a JSON data structure from Git&#8217;s log</li>
<li><a href="https://gitorious.org/capillary/capillary-js">capillary.js</a>  renders the JSON output from capillary.rb in the browser using <a href="http://raphaeljs.com/">Raphaël</a>. If you look at <a href="https://gitorious.org/capillary/capillary-js/blobs/master/lib/capillary/formatters.js">the source</a>, you&#8217;ll find that capillary.js will output a lot of other formats as well, including ASCII.</li>
</ul>
<h2>Annotations, aka. blame</h2>
<p>Ever found yourself wondering who on earth wrote a specific line in a program file and why? In that case you may have used Git&#8217;s blame tool, which lets you see which commit last changed each line in a file. Blame is now available in Gitorious too, whenever you&#8217;re viewing a file/blob in a repository. Simply hit the &#8220;Blame&#8221; link from the panes to the right above the file, and you&#8217;ll see the same contents along with some more details:</p>
<p><a href="http://gitorious.files.wordpress.com/2011/09/blame.png"><img class="alignnone size-full wp-image-470" title="blame" src="http://gitorious.files.wordpress.com/2011/09/blame.png?w=600&#038;h=161" alt="" width="600" height="161" /></a></p>
<p>To the left you&#8217;ll see a link to the commit that changed this line, along with the name of the author and when the change was made. Toggle between normal blob view, blame and history using the panes at the top right.</p>
<h2>Display diffs between several refs</h2>
<p>One of the very first features in Gitorious was the ability to view the diff of a single commit. Since then we have added support for viewing the diffs introduced by a merge request, and today we&#8217;ll let you view the diff between any two Git refs (SHA1/branch/tag) in a repository. The first place you&#8217;ll find this is next to the activity log entry when someone pushes to a repository on Gitorious:</p>
<p><a href="http://gitorious.files.wordpress.com/2011/09/diff_link.png"><img class="alignnone size-full wp-image-472" title="diff_link" src="http://gitorious.files.wordpress.com/2011/09/diff_link.png?w=600&#038;h=84" alt="" width="600" height="84" /></a></p>
<p>Here we can see that the user Goatlord pushed some commits to a repository, and there&#8217;s a link to view all the changes introduced in this push &#8211; which brings you here:</p>
<p><a href="http://gitorious.files.wordpress.com/2011/09/diffs.png"><img class="alignnone size-full wp-image-473" title="diffs" src="http://gitorious.files.wordpress.com/2011/09/diffs.png?w=600&#038;h=313" alt="" width="600" height="313" /></a></p>
<p>All the changes between two commits, displayed either inline or side-by-side. You&#8217;ll find links to compare branches and tags to each other from the tree views in Gitorious; simply select which tag or branch to compare from the right sidebar.</p>
<h2>How to upgrade your own server</h2>
<p>If you&#8217;re running your own Gitorious server, you have probably read about our versioning scheme <a href="https://gitorious.org/gitorious/pages/Versioning">on the Gitorious wiki</a>. Today&#8217;s features are in our latest version, version 2.1.0. In addition to the normal steps (run bundler, remove cached javascript and css files) you&#8217;ll need to load a few Git submodules &#8211; &#8220;git submodule init &amp;&amp; git submodule update&#8221; should take care of this. If you run into trouble upgrading, <a href="http://groups.google.com/group/gitorious">the mailing list</a> is full of helpful people.</p>
<h2>Over to you</h2>
<p>First of all: have fun using these features, we hope you&#8217;ll find them useful. If you fix any bugs, don&#8217;t hesitate to <a href="https://gitorious.org/gitorious/mainline/merge_requests/">submit a merge request</a>. The same goes if you have developed any features for your own Gitorious server that you want to share. If there are other features you&#8217;d like to see in Gitorious and you want help in developing these, please <a title="Gitorious.com contact form" href="http://gitorious.com/contact">get in touch with us</a>. There is no big corporation behind Gitorious, neither do we charge any license fees that could pay our bills. It&#8217;s up to Gitorious&#8217; users to help us evolve.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/gitorious.wordpress.com/462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/gitorious.wordpress.com/462/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/gitorious.wordpress.com/462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/gitorious.wordpress.com/462/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/gitorious.wordpress.com/462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/gitorious.wordpress.com/462/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/gitorious.wordpress.com/462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/gitorious.wordpress.com/462/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/gitorious.wordpress.com/462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/gitorious.wordpress.com/462/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/gitorious.wordpress.com/462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/gitorious.wordpress.com/462/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/gitorious.wordpress.com/462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/gitorious.wordpress.com/462/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.gitorious.org&amp;blog=7191337&amp;post=462&amp;subd=gitorious&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.gitorious.org/2011/10/20/a-little-help-from-our-friends/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/983dc27817acd9318b9d67e2e320c96d?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">zmalltalker</media:title>
		</media:content>

		<media:content url="http://gitorious.files.wordpress.com/2011/09/graph.png" medium="image">
			<media:title type="html">graph</media:title>
		</media:content>

		<media:content url="http://gitorious.files.wordpress.com/2011/09/blame.png" medium="image">
			<media:title type="html">blame</media:title>
		</media:content>

		<media:content url="http://gitorious.files.wordpress.com/2011/09/diff_link.png" medium="image">
			<media:title type="html">diff_link</media:title>
		</media:content>

		<media:content url="http://gitorious.files.wordpress.com/2011/09/diffs.png" medium="image">
			<media:title type="html">diffs</media:title>
		</media:content>
	</item>
		<item>
		<title>It&#8217;s time for the Git User&#8217;s Survey 2011!</title>
		<link>http://blog.gitorious.org/2011/09/20/its-time-for-the-git-users-survey-2011/</link>
		<comments>http://blog.gitorious.org/2011/09/20/its-time-for-the-git-users-survey-2011/#comments</comments>
		<pubDate>Tue, 20 Sep 2011 13:32:19 +0000</pubDate>
		<dc:creator>Marius Mathiesen</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.gitorious.org/?p=458</guid>
		<description><![CDATA[The Git User&#8217;s Survey 2011 is now up! Please devote a few minutes of your time to fill out the simple questionnaire; it&#8217;ll help the Git community understand your needs, what you like about Git (and what you don&#8217;t), and overall help us improve it. The survey will be open from 5 September to 3 October 2011. The [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.gitorious.org&amp;blog=7191337&amp;post=458&amp;subd=gitorious&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="https://www.survs.com/survey/VCAGZA8CT5">The Git User&#8217;s Survey 2011</a> is now up!</p>
<p>Please devote a few minutes of your time to fill out the simple questionnaire; it&#8217;ll help the Git community understand your needs, what you like about Git (and what you don&#8217;t), and overall help us improve it.</p>
<p>The survey will be open from <em>5 September</em> to <em>3 October 2011</em>.</p>
<p>The results will be published at <a href="http://git.wiki.kernel.org/index.php/GitSurvey2011">GitSurvey2011</a>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/gitorious.wordpress.com/458/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/gitorious.wordpress.com/458/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/gitorious.wordpress.com/458/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/gitorious.wordpress.com/458/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/gitorious.wordpress.com/458/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/gitorious.wordpress.com/458/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/gitorious.wordpress.com/458/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/gitorious.wordpress.com/458/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/gitorious.wordpress.com/458/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/gitorious.wordpress.com/458/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/gitorious.wordpress.com/458/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/gitorious.wordpress.com/458/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/gitorious.wordpress.com/458/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/gitorious.wordpress.com/458/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.gitorious.org&amp;blog=7191337&amp;post=458&amp;subd=gitorious&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.gitorious.org/2011/09/20/its-time-for-the-git-users-survey-2011/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/983dc27817acd9318b9d67e2e320c96d?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">zmalltalker</media:title>
		</media:content>
	</item>
		<item>
		<title>Emergency reboot today at 14.30 CET [done]</title>
		<link>http://blog.gitorious.org/2011/08/04/emergency-reboot-today-at-14-30-cet/</link>
		<comments>http://blog.gitorious.org/2011/08/04/emergency-reboot-today-at-14-30-cet/#comments</comments>
		<pubDate>Thu, 04 Aug 2011 11:58:58 +0000</pubDate>
		<dc:creator>Marius Mathiesen</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.gitorious.org/?p=453</guid>
		<description><![CDATA[Due to some changes in Gitorious&#8217; network infrastructure, we need to reboot the servers today at 14.30 CET. This should be completed before 14:35 &#8211; we&#8217;ll post an update here once we&#8217;re done. Edit: As of 16:08, we&#8217;re back up and running.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.gitorious.org&amp;blog=7191337&amp;post=453&amp;subd=gitorious&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Due to some changes in Gitorious&#8217; network infrastructure, we need to reboot the servers today at 14.30 CET. This should be completed before 14:35 &#8211; we&#8217;ll post an update here once we&#8217;re done.</p>
<p>Edit: As of 16:08, we&#8217;re back up and running.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/gitorious.wordpress.com/453/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/gitorious.wordpress.com/453/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/gitorious.wordpress.com/453/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/gitorious.wordpress.com/453/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/gitorious.wordpress.com/453/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/gitorious.wordpress.com/453/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/gitorious.wordpress.com/453/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/gitorious.wordpress.com/453/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/gitorious.wordpress.com/453/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/gitorious.wordpress.com/453/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/gitorious.wordpress.com/453/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/gitorious.wordpress.com/453/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/gitorious.wordpress.com/453/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/gitorious.wordpress.com/453/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.gitorious.org&amp;blog=7191337&amp;post=453&amp;subd=gitorious&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.gitorious.org/2011/08/04/emergency-reboot-today-at-14-30-cet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/983dc27817acd9318b9d67e2e320c96d?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">zmalltalker</media:title>
		</media:content>
	</item>
		<item>
		<title>Scheduled downtime this Wednesday</title>
		<link>http://blog.gitorious.org/2011/07/25/scheduled-downtime-this-wednesday/</link>
		<comments>http://blog.gitorious.org/2011/07/25/scheduled-downtime-this-wednesday/#comments</comments>
		<pubDate>Mon, 25 Jul 2011 11:33:15 +0000</pubDate>
		<dc:creator>Marius Mathiesen</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.gitorious.org/?p=448</guid>
		<description><![CDATA[We need to add some more storage to our SAN infrastructure, which means our servers will be unavailable for approximately 1 hour Wednesday morning, July 27., from 8AM CET. We will post updates via our identi.ca/Twitter accounts, and update this post once we&#8217;ve completed the upgrade. As always, you can check our status site to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.gitorious.org&amp;blog=7191337&amp;post=448&amp;subd=gitorious&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>We need to add some more storage to our SAN infrastructure, which means our servers will be unavailable for approximately 1 hour Wednesday morning, July 27., from 8AM CET.</p>
<p>We will post updates via our <a href="http://identi.ca/gitorious">identi.ca</a>/<a href="https://twitter.com/#!/gitorious">Twitter</a> accounts, and update this post once we&#8217;ve completed the upgrade. As always, you can check <a href="http://status.gitorious.org/">our status site</a> to see the current status.</p>
<p>&nbsp;</p>
<p><strong>Edit</strong>: We&#8217;re back up.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/gitorious.wordpress.com/448/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/gitorious.wordpress.com/448/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/gitorious.wordpress.com/448/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/gitorious.wordpress.com/448/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/gitorious.wordpress.com/448/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/gitorious.wordpress.com/448/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/gitorious.wordpress.com/448/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/gitorious.wordpress.com/448/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/gitorious.wordpress.com/448/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/gitorious.wordpress.com/448/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/gitorious.wordpress.com/448/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/gitorious.wordpress.com/448/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/gitorious.wordpress.com/448/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/gitorious.wordpress.com/448/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.gitorious.org&amp;blog=7191337&amp;post=448&amp;subd=gitorious&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.gitorious.org/2011/07/25/scheduled-downtime-this-wednesday/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/983dc27817acd9318b9d67e2e320c96d?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">zmalltalker</media:title>
		</media:content>
	</item>
		<item>
		<title>Updates to our Terms of Service</title>
		<link>http://blog.gitorious.org/2011/06/01/updates-to-our-terms-of-service/</link>
		<comments>http://blog.gitorious.org/2011/06/01/updates-to-our-terms-of-service/#comments</comments>
		<pubDate>Wed, 01 Jun 2011 05:59:07 +0000</pubDate>
		<dc:creator>Marius Mathiesen</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.gitorious.org/?p=444</guid>
		<description><![CDATA[When we originally wrote our terms of service, we wanted to make sure that gitorious.org could not get in trouble if our users published source code they were not allowed to publish; for instance if they didn&#8217;t have a license for the source code. Based on this, our terms of service stated that users submitting [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.gitorious.org&amp;blog=7191337&amp;post=444&amp;subd=gitorious&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>When we originally wrote our terms of service, we wanted to make sure that gitorious.org could not get in trouble if our users published source code they were not allowed to publish; for instance if they didn&#8217;t have a license for the source code. Based on this, our terms of service stated that users submitting content to gitorious.org granted Gitorious &#8220;<em>a world-wide, perpetual, royalty-free, and non-exclusive license(&#8230;)</em>&#8221; to the content.</p>
<p>As <a href="http://groups.google.com/group/gitorious/browse_thread/thread/2682dbda48ce1c4a/849cdd7ebff4077a?lnk=gst&amp;q=terms+of+service+license#849cdd7ebff4077a">someone pointed out</a> on the Gitorious mailing list, most free software licenses prohibit sublicensing, which made our terms of service incompatible with these licenses. We have been working with our attourney and <a href="http://www.fsf.org/">the Free Software Foundation</a> over the past two months to come up with a terms of service that both limits Gitorious&#8217; liabilities in case of copyright infringement and is compatible with free software licenses.</p>
<p>We have just posted an updated version of the <a href="http://en.gitorious.org/tos/">Terms of Service</a> that the FSF finds acceptable, and still protects Gitorious sufficiently. We believe the changes we have made are to our users&#8217; benefit, but as a gitorious.org user you should review these changes.</p>
<p>If you have any comments or questions about these changes, please comment on this post.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/gitorious.wordpress.com/444/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/gitorious.wordpress.com/444/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/gitorious.wordpress.com/444/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/gitorious.wordpress.com/444/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/gitorious.wordpress.com/444/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/gitorious.wordpress.com/444/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/gitorious.wordpress.com/444/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/gitorious.wordpress.com/444/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/gitorious.wordpress.com/444/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/gitorious.wordpress.com/444/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/gitorious.wordpress.com/444/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/gitorious.wordpress.com/444/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/gitorious.wordpress.com/444/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/gitorious.wordpress.com/444/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.gitorious.org&amp;blog=7191337&amp;post=444&amp;subd=gitorious&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.gitorious.org/2011/06/01/updates-to-our-terms-of-service/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/983dc27817acd9318b9d67e2e320c96d?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">zmalltalker</media:title>
		</media:content>
	</item>
		<item>
		<title>Improved SSL support + IPv6</title>
		<link>http://blog.gitorious.org/2011/03/26/improved-ssl-ipv6/</link>
		<comments>http://blog.gitorious.org/2011/03/26/improved-ssl-ipv6/#comments</comments>
		<pubDate>Sat, 26 Mar 2011 07:53:31 +0000</pubDate>
		<dc:creator>Christian Johansen</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.gitorious.org/?p=438</guid>
		<description><![CDATA[As of today, gitorious.org has vastly improved SSL support. You are now free to surf gitorious.org through https only, should you wish to do so. Previously, our SSL support has been restricted to a few select actions, and there has been redirects from https to http. With today&#8217;s deployment, gitorious.org will never redirect you away [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.gitorious.org&amp;blog=7191337&amp;post=438&amp;subd=gitorious&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>As of today, gitorious.org has vastly improved SSL support. You are now free to surf gitorious.org through https only, should you wish to do so. Previously, our SSL support has been restricted to a few select actions, and there has been redirects from https to http.</p>
<p>With today&#8217;s deployment, gitorious.org will <strong>never</strong> redirect you away from https (if it does, report a bug to <a href="mailto:support@gitorious.org">support@gitorious.org</a>). You will also be forced to use https as long as you&#8217;re logged in, and when posting forms (i.e. logging in).</p>
<p>For those of you who maintain your own Gitorious setups, this change is pretty straight forward. The new SSL feature is enabled by default, and can be controlled through the gitorious.yml setting <code>use_ssl</code>. When this setting is set to <code>true</code>, Gitorious will enforce SSL where appropriate. When it is false, Gitorious will actively ensure http.</p>
<p>We will follow up this change by adding <a href="http://en.wikipedia.org/wiki/HTTP_Strict_Transport_Security">HSTS</a> shortly.</p>
<p>In other news, gitorious.org is also available on IPv6, thanks to our awesome hosting partner, <a href="http://www.redpill-linpro.no/">Linpro</a>. We&#8217;re still having some issues with the backend for git:// and http:// Git access, so for now they are IPv4 only. We are working to resolve this issue.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/gitorious.wordpress.com/438/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/gitorious.wordpress.com/438/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/gitorious.wordpress.com/438/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/gitorious.wordpress.com/438/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/gitorious.wordpress.com/438/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/gitorious.wordpress.com/438/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/gitorious.wordpress.com/438/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/gitorious.wordpress.com/438/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/gitorious.wordpress.com/438/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/gitorious.wordpress.com/438/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/gitorious.wordpress.com/438/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/gitorious.wordpress.com/438/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/gitorious.wordpress.com/438/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/gitorious.wordpress.com/438/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.gitorious.org&amp;blog=7191337&amp;post=438&amp;subd=gitorious&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.gitorious.org/2011/03/26/improved-ssl-ipv6/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/6e7ddb6784d284c385f3f0f307ebf90d?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">cjohansen</media:title>
		</media:content>
	</item>
		<item>
		<title>Today&#8217;s outage</title>
		<link>http://blog.gitorious.org/2011/03/22/todays-outage/</link>
		<comments>http://blog.gitorious.org/2011/03/22/todays-outage/#comments</comments>
		<pubDate>Tue, 22 Mar 2011 14:07:52 +0000</pubDate>
		<dc:creator>Marius Mathiesen</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.gitorious.org/?p=435</guid>
		<description><![CDATA[Around 12:00 CET today, gitorious.org went down and was down for about 10 minutes. During this time, both the web site and git push/pull was unavailable. This is a short summary of what happened. We have been having performance issues with our database over the last few months. The main bottleneck has been our events [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.gitorious.org&amp;blog=7191337&amp;post=435&amp;subd=gitorious&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Around 12:00 CET today, gitorious.org went down and was down for about 10 minutes. During this time, both the web site and git push/pull was unavailable. This is a short summary of what happened.</p>
<p>We have been having performance issues with our database over the last few months. The main bottleneck has been our events table, which keeps track of all kind of activity on gitorious.org. The events table even contained one row for each commit ever pushed to gitorious.org, information that is already available through Git itself. A few weeks ago, we pushed a change to Gitorious which means we no longer create an entry in the database for each commit, only the push that occurs &#8211; and the push event keeps track of which commits were included. The commit data is then fetched from the Git log.</p>
<p>This morning we raised the amount of memory allocated to our MySQL server, specifically the innodb_buffer_pool_size setting, and restarted the database server. To be on the safe side of things we reloaded the <a href="http://modrails.com/">Passenger</a> instances, to keep them from hanging on to dead database connections. Initially, things seemed to be okay, until the web app went down about 15 minutes later. We tracked this down to about 100 Passenger instances waiting on the global queue, and found the MySQL server busy inserting data into the sessions table. By now the familiar sound of face-meets-palm was getting louder: <em><strong>we have a sessions table?</strong></em> Apparently, <a href="http://gitorious.org/gitorious/mainline/commit/218579e9a8ed0ae0cb9b522a7fb4f96860b14a75">we did</a>. Having one and not knowing it means it kept quite a lot of data too. So we switched to cookie based sessions and restarted the server, and things seem to be running smoothly now.</p>
<p>The reason why the database server stopped responding &#8211; blaming the huge amounts of data on ourselves &#8211; is that the file system where MySQL keeps its data went full while the server was coming back up after the restart. We&#8217;ll be adding more disk there now.</p>
<p>Sorry about the downtime, it happened because we&#8217;re addressing the performance on gitorious.org. Changing things involve a risk of breaking them, which is what happened today.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/gitorious.wordpress.com/435/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/gitorious.wordpress.com/435/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/gitorious.wordpress.com/435/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/gitorious.wordpress.com/435/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/gitorious.wordpress.com/435/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/gitorious.wordpress.com/435/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/gitorious.wordpress.com/435/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/gitorious.wordpress.com/435/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/gitorious.wordpress.com/435/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/gitorious.wordpress.com/435/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/gitorious.wordpress.com/435/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/gitorious.wordpress.com/435/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/gitorious.wordpress.com/435/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/gitorious.wordpress.com/435/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.gitorious.org&amp;blog=7191337&amp;post=435&amp;subd=gitorious&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.gitorious.org/2011/03/22/todays-outage/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/983dc27817acd9318b9d67e2e320c96d?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">zmalltalker</media:title>
		</media:content>
	</item>
		<item>
		<title>Web performance, part 1</title>
		<link>http://blog.gitorious.org/2011/03/18/web-performance-part-1/</link>
		<comments>http://blog.gitorious.org/2011/03/18/web-performance-part-1/#comments</comments>
		<pubDate>Fri, 18 Mar 2011 14:44:45 +0000</pubDate>
		<dc:creator>Marius Mathiesen</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.gitorious.org/?p=431</guid>
		<description><![CDATA[After experiencing some really heavy loads on the server last weekend (which caused some 503&#8242;s &#8211; sorry again) we pulled down some logs from the servers and applied some grep and sed magic on them. We were a little surprised by what we learned. It turned out that over 20% of the requests to the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.gitorious.org&amp;blog=7191337&amp;post=431&amp;subd=gitorious&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>After experiencing some really heavy loads on the server last weekend (which caused some 503&#8242;s &#8211; sorry again) we pulled down some logs from the servers and applied some grep and sed magic on them. We were a little surprised by what we learned.</p>
<p>It turned out that over 20% of the requests to the servers were requests for a commit (Commits#show in Rails-speak). You guys seem to use Gitorious to read code! The thing is that all Git activity is quite expensive, so these 20-something percent requests accounted for 35% of the server&#8217;s rendering time.</p>
<p>The chance of a Git commit identified by a SHA changing over time is fairly low, which means it&#8217;s a very good candidate for caching. The only issue is that Gitorious displays quite a lot of personalized content, depending on whether you&#8217;re logged in or not: the top part of the page displays your username and unread message count, for instance. So if we naïvely cached it, the second user requesting a commit would receive the page rendered for the previous user viewing the same page.</p>
<p>So we extracted the diff and comment parts of the commit page into two separate parts, loaded using javascript when the page is loaded. This way, the full page is cheap to render, and the git data are loaded afterwards, in a payload that will be the same for every user.</p>
<p>Now all we had to do is to make sure these pages are rendered from cache. We&#8217;ve been running <a href="http://www.varnish-cache.org/">varnish</a> in front of Apache on gitorious.org for quite a long time. Varnish uses some quite simple rules to determine whether contents can be cached or not. For our new pages this is what we needed to do to make Varnish serve them from the cache was:</p>
<ul>
<li>Set a Cache-Control header that tells Varnish for how long the content can be cached</li>
<li>Make sure we&#8217;re not sending Set-Cookie headers from the Rails app, since Varnish by default will not cache data containing cookies</li>
</ul>
<p>We just deployed this new code this afternoon, and have been watching the load on the server over the last few hours. Before we deployed it, the server was using all its Passenger processes to the full. After deploying the change, 2/3 of the processes have been idling, making Gitorious.org a whole lot snappier.</p>
<p>We&#8217;ll be putting more work into the performance of the web app over the next few weeks, so expect more posts like these in the feature. And as always, <a href="mailto:support@gitorious.org">let us know</a> if you&#8217;re having any issues, and we&#8217;ll help as good as we can!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/gitorious.wordpress.com/431/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/gitorious.wordpress.com/431/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/gitorious.wordpress.com/431/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/gitorious.wordpress.com/431/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/gitorious.wordpress.com/431/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/gitorious.wordpress.com/431/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/gitorious.wordpress.com/431/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/gitorious.wordpress.com/431/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/gitorious.wordpress.com/431/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/gitorious.wordpress.com/431/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/gitorious.wordpress.com/431/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/gitorious.wordpress.com/431/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/gitorious.wordpress.com/431/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/gitorious.wordpress.com/431/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.gitorious.org&amp;blog=7191337&amp;post=431&amp;subd=gitorious&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.gitorious.org/2011/03/18/web-performance-part-1/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/983dc27817acd9318b9d67e2e320c96d?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">zmalltalker</media:title>
		</media:content>
	</item>
	</channel>
</rss>
