<?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/"
	>

<channel>
	<title>Weez.com</title>
	<atom:link href="http://www.weez.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.weez.com</link>
	<description>Solving everyday practical LAMP problems... one at a time</description>
	<lastBuildDate>Fri, 03 Sep 2010 18:37:13 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>testpost</title>
		<link>http://www.weez.com/2010/09/testpost/</link>
		<comments>http://www.weez.com/2010/09/testpost/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 18:37:13 +0000</pubDate>
		<dc:creator>Abidoon</dc:creator>
				<category><![CDATA[Apache]]></category>

		<guid isPermaLink="false">http://www.weez.com/?p=11693</guid>
		<description><![CDATA[New test post physics physics]]></description>
			<content:encoded><![CDATA[<p>New test post physics physics</p>
]]></content:encoded>
			<wfw:commentRss>http://www.weez.com/2010/09/testpost/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cool Handle Hosting Doubles Size of Data Center</title>
		<link>http://www.weez.com/2010/09/cool-handle-hosting-doubles-size-of-data-center/</link>
		<comments>http://www.weez.com/2010/09/cool-handle-hosting-doubles-size-of-data-center/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 18:20:48 +0000</pubDate>
		<dc:creator>Abidoon</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Center]]></category>
		<category><![CDATA[Cool]]></category>
		<category><![CDATA[data]]></category>
		<category><![CDATA[Doubles]]></category>
		<category><![CDATA[handle]]></category>
		<category><![CDATA[Hosting]]></category>
		<category><![CDATA[SIZE]]></category>

		<guid isPermaLink="false">http://www.weez.com/2010/09/cool-handle-hosting-doubles-size-of-data-center/</guid>
		<description><![CDATA[Cool Handle Hosting Doubles Size of Data Center LOS ANGELES, Sept. 1 /PRNewswire/ &#8212; Web hosting provider Cool Handle (http://www.coolhandle.com) has doubled their data center size and infrastructure. The upgrade allows Cool Handle to offer dedicated servers and virtual private servers at an amazing 50% off for a limited time only. Not only is this [...]]]></description>
			<content:encoded><![CDATA[<p><b>Cool Handle Hosting Doubles Size of Data Center</b><br />
LOS ANGELES, Sept. 1 /PRNewswire/ &#8212; Web hosting provider Cool Handle (http://www.coolhandle.com) has doubled their data center size and infrastructure. The upgrade allows Cool Handle to offer dedicated servers and virtual private servers at an amazing 50% off for a limited time only. Not only is this an incredibly low price, but the offer also includes 100Mbit network &#8230;</p>
<p>Read more on <a rel="nofollow" href="http://www.redorbit.com/news/technology/1911290/cool_handle_hosting_doubles_size_of_data_center/index.html?source=r_technology">redOrbit</a><br/><br/></p>
]]></content:encoded>
			<wfw:commentRss>http://www.weez.com/2010/09/cool-handle-hosting-doubles-size-of-data-center/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IPnet Calculator</title>
		<link>http://www.weez.com/2010/09/ipnet-calculator/</link>
		<comments>http://www.weez.com/2010/09/ipnet-calculator/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 18:03:19 +0000</pubDate>
		<dc:creator>Abidoon</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Calculator]]></category>
		<category><![CDATA[IPnet]]></category>

		<guid isPermaLink="false">http://www.weez.com/2010/09/ipnet-calculator/</guid>
		<description><![CDATA[Package: IPnet Calculator Summary: Compute the common mask from multiple IP addresses Groups: Networking, PHP 5 Author: Alexander Over Description: This class can be used to compute the common mask from multiple IP addresses. It takes two or more IP addresses and determines the bits with the common values in order to determine what should [...]]]></description>
			<content:encoded><![CDATA[<div>
<div style="font-weight: bold; font-size: larger; margin-top: 1ex">Package:</div>
<div><a href="http://www.phpclasses.org/package/6456-PHP-Compute-the-common-mask-from-multiple-IP-addresses.html">IPnet Calculator</a></div>
<div style="font-weight: bold; font-size: larger; margin-top: 1ex">Summary: </div>
<div><span name="description">Compute the common mask from multiple IP addresses</span></div>
<div style="font-weight: bold; font-size: larger; margin-top: 1ex">Groups: </div>
<div><a href="http://www.phpclasses.org/browse/class/3.html">Networking</a>, <a href="http://www.phpclasses.org/browse/class/8.html">PHP 5</a></div>
<div style="font-weight: bold; font-size: larger; margin-top: 1ex">Author: </div>
<div><a href="http://www.phpclasses.org/browse/author/193794.html">Alexander Over</a></div>
<div style="font-weight: bold; font-size: larger; margin-top: 1ex">Description: </div>
<div>This class can be used to compute the common mask from multiple IP addresses.</p>
<p>It takes two or more IP addresses and determines the bits with the common values in order to determine what should be the applicable network address mask.</p>
<p>The class supports network addresses either in the IP version 4 and version 6 formats.</p></div>
</div>
<p><a href="http://feedads.g.doubleclick.net/~a/a9yeeYh1CikaCSEf9M80ET_nQRw/0/da"><img src="http://feedads.g.doubleclick.net/~a/a9yeeYh1CikaCSEf9M80ET_nQRw/0/di" border="0" ismap="true"></img></a><br/><br />
<a href="http://feedads.g.doubleclick.net/~a/a9yeeYh1CikaCSEf9M80ET_nQRw/1/da"><img src="http://feedads.g.doubleclick.net/~a/a9yeeYh1CikaCSEf9M80ET_nQRw/1/di" border="0" ismap="true"></img></a></p>
<p>View full post on <a href="http://feedproxy.google.com/~r/phpclasses/~3/hS2yWdwwONo/6456-PHP-Compute-the-common-mask-from-multiple-IP-addresses.html">PHP Classes: Latest entries</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.weez.com/2010/09/ipnet-calculator/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Drizzle build 1742 tarball has been released</title>
		<link>http://www.weez.com/2010/09/drizzle-build-1742-tarball-has-been-released/</link>
		<comments>http://www.weez.com/2010/09/drizzle-build-1742-tarball-has-been-released/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 18:03:18 +0000</pubDate>
		<dc:creator>Abidoon</dc:creator>
				<category><![CDATA[Drizzle]]></category>
		<category><![CDATA[1742]]></category>
		<category><![CDATA[been]]></category>
		<category><![CDATA[Build]]></category>
		<category><![CDATA[released]]></category>
		<category><![CDATA[tarball]]></category>

		<guid isPermaLink="false">http://www.weez.com/2010/09/drizzle-build-1742-tarball-has-been-released/</guid>
		<description><![CDATA[Drizzle source tarball based on build 1742 has been released. In this release: *Continued work on logging statistics &#8211; added a table to the scoreboard that gives memory usage and size print stack trace and stack dump have been removed. As we use gcc for a majority of our builds, we are now using the [...]]]></description>
			<content:encoded><![CDATA[<p>Drizzle source tarball based on build 1742 has been released.</p>
<p>In this release:</p>
<ul>
<li>*Continued work on <a href="http://www.8bitsofbytes.com/">logging statistics</a> &#8211; added a table to the scoreboard that gives memory usage and size</li>
<li> print stack trace and stack dump have been removed.  As we use gcc for a majority of our builds, we are now using the built-in backtrace ability.  Added crash and shutdown functions for use in testing.  See <a href="https://blueprints.launchpad.net/drizzle/+spec/remove-print-stack-trace">blueprint</a> for more details</li>
<li> FOREIGN KEY info is now put into the table proto on CREATE TABLE, no longer just passed to the engine</li>
<li> SHOW CREATE TABLE now uses the table proto</li>
<li> Packages available for <a href="http://packages.debian.org/unstable/main/drizzle">Debian</a> and <a href="https://launchpad.net/ubuntu/+source/drizzle">Ubuntu</a></li>
<li> Removed static instances from plugins</li>
<li> Continued code cleanup</li>
<li> Various bug fixes</li>
</ul>
<p>The Drizzle download file can be found <a href="https://launchpad.net/drizzle/dexter/2010-08-30">here</a></p>
<p>View full post on <a href="http://blog.drizzle.org/2010/08/31/drizzle-build-1742-tarball-has-been-released/">DrizzleBlog</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.weez.com/2010/09/drizzle-build-1742-tarball-has-been-released/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Patrick Crews: Testing the data dictionary in a concurrent environment</title>
		<link>http://www.weez.com/2010/09/patrick-crews-testing-the-data-dictionary-in-a-concurrent-environment/</link>
		<comments>http://www.weez.com/2010/09/patrick-crews-testing-the-data-dictionary-in-a-concurrent-environment/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 18:03:15 +0000</pubDate>
		<dc:creator>Abidoon</dc:creator>
				<category><![CDATA[Drizzle]]></category>
		<category><![CDATA[concurrent]]></category>
		<category><![CDATA[Crews]]></category>
		<category><![CDATA[data]]></category>
		<category><![CDATA[Dictionary]]></category>
		<category><![CDATA[Environment]]></category>
		<category><![CDATA[Patrick]]></category>
		<category><![CDATA[Testing]]></category>

		<guid isPermaLink="false">http://www.weez.com/2010/09/patrick-crews-testing-the-data-dictionary-in-a-concurrent-environment/</guid>
		<description><![CDATA[So, Brian wrote a bug the other day, asking me to do more testing of Drizzle&#8217;s data dictionary.  Specifically, we wanted to look for how things behaved in a concurrent environment as this is often a killer for table functions / what people are most likely to forget. What we came up with was the [...]]]></description>
			<content:encoded><![CDATA[<div id="_mcePaste">So, Brian wrote a <a href="https://bugs.launchpad.net/drizzle/+bug/619422">bug</a> the other day, asking me to do more testing of <a href="http://drizzle.org/Home.html">Drizzle&#8217;s</a> data dictionary.  Specifically, we wanted to look for how things behaved in a concurrent environment as this is often a killer for table functions / what people are most likely to forget.</div>
</p>
<div id="_mcePaste">What we came up with was the following <a href="https://blueprints.launchpad.net/drizzle/+spec/randgen-data-dict-testing">plan</a>:</div>
<div id="_mcePaste">1)  Generate a test that only looked at data dictionary tables, with several users generating the same queries.</div>
<div id="_mcePaste">2)  If step 1 looks good, we will slowly introduce background workloads (SELECT / UPDATE / etc) while we continue with the workload from step 1.</div>
</p>
<div id="_mcePaste">This resulted in a couple of new randgen grammars:</div>
<div id="_mcePaste">data_dict_concurrent_drizzle.yy &#8211; this grammar generates nothing but queries against the data dictionary tables.  At present, these are mostly of the variety:</div>
<div id="_mcePaste">
<ul>
<li><span>SELECT * FROM data_dictionary_table</span></li>
<li><span>SHOW PROCESSLIST | VARIABLE | TABLE STATUS | etc</span></li>
</ul>
</div>
<div id="_mcePaste">This is designed to stress the data dictionary, either alone or with another randgen process generating a background workload.</div>
</p>
<div id="_mcePaste">proclist_subquery_drizzle.yy &#8211; this grammar is the same as optimizer_subquery_drizzle (generating *nasty*, subquery-heavy SELECTs), but also allows for SHOW PROCESSLIST commands. This is mainly designed to stress the server / PROCESSLIST.  This grammar is nice as it is a single test that can just be run with several threads.</div>
</p>
<div id="_mcePaste">I am happy to report that in a data dictionary-only environment, the server was able to handle things very well.  I was running up to 100 connections, 100k queries per connection and things looked good.</div>
</p>
<div id="_mcePaste">The other tests are another matter.  While these are somewhat simple tests, they have proven highly effective so far:</div>
<div id="_mcePaste">
<ul>
<li><span><a href="https://bugs.launchpad.net/bugs/627733">Bug #627733</a>: Crash in InnodbTrxTool::Generator::populate_innodb_locks (this=0x7f26140046f0) at plugin/innobase/handler/data_dictionary.cc:269</span></li>
<li><span><a href="https://bugs.launchpad.net/bugs/627742">Bug #627742</a>: Assertion failed &#8211; in drizzled::plugin::TableFunction::Generator::push (this=0x23876c0, arg=&lt;value optimized out&gt;, length=&lt;value optimized out&gt;) at drizzled/plugin/table_function.cc:185</span></li>
<li><span><a href="https://bugs.launchpad.net/bugs/628398">Bug #628398</a>: Crash / segfault in copy_fields (join=0x284f868, end_of_records=false) at drizzled/sql_select.cc:6228</span></li>
<li><span><a href="https://bugs.launchpad.net/bugs/628891">Bug #628891</a>: Crash / assertion failed &#8211; in drizzled::Diagnostics_area::set_eof_status (this=0x7f9f3c2c4258, session=0x7f9f3c2c3b10) at drizzled/diagnostics_area.cc:120</span></li>
</ul>
</div>
<div id="_mcePaste">For each of these bugs, data dictionary queries were being executed while another query was also being processed.  It should be noted that our newest team member, <a href="http://www.linuxjedi.co.uk/">Andrew Hutchings</a>, had Bug#627742 fixed in less than 24 hours : )</div>
<div></div>
</p>
<div id="_mcePaste">I still have a few more scenarios to run through, but it appears that we have shaken out most of the bugs in this area.  Our next steps will be to install such tests in our build and test system to prevent regressions / catch new bugs and to fix the remaining crashes noted above.</div>
<p>View full post on <a href="http://www.wc220.com/?p=38">Planet Drizzle</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.weez.com/2010/09/patrick-crews-testing-the-data-dictionary-in-a-concurrent-environment/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Zookeeper experience</title>
		<link>http://www.weez.com/2010/09/zookeeper-experience/</link>
		<comments>http://www.weez.com/2010/09/zookeeper-experience/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 18:03:12 +0000</pubDate>
		<dc:creator>Abidoon</dc:creator>
				<category><![CDATA[Voldemort]]></category>
		<category><![CDATA[Experience]]></category>
		<category><![CDATA[Zookeeper]]></category>

		<guid isPermaLink="false">http://www.weez.com/2010/09/zookeeper-experience/</guid>
		<description><![CDATA[While working on Kafka, a distributed pub/sub system (more on that later) at LinkedIn, I need to use Zookeeper (ZK) to implement the load-balancing logic. I&#8217;d like to share my experience of using Zookeeper. First of all, for those of you who don&#8217;t know, Zookeeper is an Apache project that implements a consensus service based [...]]]></description>
			<content:encoded><![CDATA[<p>While working on Kafka, a distributed pub/sub system (more on that later) at LinkedIn, I need to use <a title="Zookeeper" href="http://hadoop.apache.org/zookeeper/">Zookeeper</a> (ZK) to implement the load-balancing logic. I&#8217;d like to share my experience of using Zookeeper. First of all, for those of you who don&#8217;t know, Zookeeper is an Apache project that implements a consensus service based on a variant of <a href="http://en.wikipedia.org/wiki/Paxos_algorithm">Paxos</a> (it&#8217;s similar to Google&#8217;s <a title="Chubby" href="http://labs.google.com/papers/chubby.html">Chubby</a>). ZK has a very simple, file system like API. One can create a path, set the value of a path, read the value of a path, delete a path, and list the children of a path. ZK does a couple of more interesting things: (a) one can register a watcher on a path and get notified when the children of a path or the value of a path is changed, (b) a path can be created as ephemeral, which means that if the client that created the path is gone, the path is automatically removed by the ZK server. However, don&#8217;t let the simple API fool you. One needs to understand a lot more than those APIs in order to use them properly. For me, this translates to weeks asking the ZK mailing list (which is pretty responsive) and our local ZK experts.</p>
<p>To get started, it&#8217;s important to understand the state transitions and the associated watcher events inside a ZK client. A ZK client can be in one of the 3 states, disconnected, connected, and closed. When a client is created, it&#8217;s in the disconnected state. Once a connection is established, the client is moved to the connected state. If the client loses its connection to a server, it switches back to the disconnected state. If it can&#8217;t connect to any server within some time limit, it&#8217;s eventually transitioned to the closed state. For each state transition, a state changing event (disconnected, syncconnected and expired) is sent to the client&#8217;s watcher. As you will see, those events are critical to the client. Finally, if one performs an operation on ZK when the client is in the disconnected state, a ConnectionLossException (CLE) is thrown back to the caller. More detailed information can be found at the ZK <a href="http://wiki.apache.org/hadoop/ZooKeeper/FAQ">site</a>. A lot of the subtleties when using ZK are to deal with those state changing events.</p>
<p>The first tricky issue is related to CLE. The problem is that when a CLE happens, the requested operation may or may not have taken place on ZK. If the connection was lost before the request reached the server, the operation didn&#8217;t take place. On the other hand, it can happen that the request did reach the server and got executed there. However, before the server can send a response back, the connection was lost. If the request is a read or an update, one can just keep retrying until the operation succeeds. It becomes a problem if the request is a create. If you simply retry, you may get a NodeExistsException and it&#8217;s not clear whether it&#8217;s you or someone else have created the path. What one can do is to set the value of the path to a client specific value during creation. If a NodeExistsException is thrown, read the value back to check who actually created it. One can&#8217;t use this approach for sequential paths (a ZK feature that creates a path with a generated sequential id) though. If you retry, a different path will be created. You also can&#8217;t check who created the path, since if you get a CLE, you don&#8217;t know the name of the path that gets created. For this reason, I think that sequential paths have very limited benefit since it&#8217;s very hard to use them correctly.</p>
<p>The second tricky issue is to distinguish between a disconnect and an expired event. The former happens when the ZK client can&#8217;t connect to the server. This is because either (1) the ZK server is down, or (2) the ZK server is up, but the ZK client is partitioned from the server or it is in a long GC pause and can&#8217;t send the heartbeat in time. In case (1), when the ZK server comes back, the client watcher will get a syncconnected event and everything is back to normal. Surprisingly, in this case, all the ephemeral paths and the watchers are still kept at the server and you don&#8217;t have to recreate them. In case (2), when the client finally reconnects to the server, it will get back an expired event. This implies that the server thinks the client is dead and has taken the liberty to delete all the ephemeral paths and watchers created by that client. It&#8217;s the responsibility of the client to start a new ZK session and to recreate the ephemeral paths and the watchers.</p>
<p>To deal with the above issues, one has to write additional code that keeps track of the ZK client state, starts a new session when the old one expires, and handles the CLE appropriately. For my application, I find the <a href="http://github.com/sgroschupf/zkclient">ZKClient</a> package quite useful. ZKClient is a wrapper of the original ZK client. It maintains the current state of the ZK client, hides the CLE from the caller by retrying the request when the state is transitioned to connected again, and reconnects when necessary. ZKClient has an Apache license and has been used in <a href="http://katta.sourceforge.net/">Katta</a> for quite some time. Even with the help of ZKClient, I still have to handle things like who actually created a path when a NodeExistsException occurs and re-registering after a session expires.</p>
<p>Finally, how do you test your ZK application, especially the various failure scenarios? One can use utilities like &#8220;ifconfig down/up&#8221; to simulate network partitioning. Todd Lipcon&#8217;s <a href="http://github.com/toddlipcon/gremlins">Gremlins</a> seems very useful too.</p>
<p>View full post on <a href="http://sna-projects.com/blog/2010/08/zookeeper-experience/">SNA Projects Blog</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.weez.com/2010/09/zookeeper-experience/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Eight great virtual appliances for VMware, free for the downloading</title>
		<link>http://www.weez.com/2010/09/eight-great-virtual-appliances-for-vmware-free-for-the-downloading/</link>
		<comments>http://www.weez.com/2010/09/eight-great-virtual-appliances-for-vmware-free-for-the-downloading/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 18:03:07 +0000</pubDate>
		<dc:creator>Abidoon</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Appliances]]></category>
		<category><![CDATA[downloading]]></category>
		<category><![CDATA[Eight]]></category>
		<category><![CDATA[Free]]></category>
		<category><![CDATA[Great]]></category>
		<category><![CDATA[Virtual]]></category>
		<category><![CDATA[VMware]]></category>

		<guid isPermaLink="false">http://www.weez.com/2010/09/eight-great-virtual-appliances-for-vmware-free-for-the-downloading/</guid>
		<description><![CDATA[Eight great virtual appliances for VMware, free for the downloading The combination of free open source and virtual machines is hard to beat; here are some of the handiest virtual appliances you&#8217;ll find Read more on Network World]]></description>
			<content:encoded><![CDATA[<p><b>Eight great virtual appliances for VMware, free for the downloading</b><br />
The combination of free open source and virtual machines is hard to beat; here are some of the handiest virtual appliances you&#8217;ll find</p>
<p>Read more on <a rel="nofollow" href="http://www.networkworld.com/reviews/2010/090110-eight-great-virtual-appliances-for.html?source=nww_rss">Network World</a><br/><br/></p>
]]></content:encoded>
			<wfw:commentRss>http://www.weez.com/2010/09/eight-great-virtual-appliances-for-vmware-free-for-the-downloading/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>lighttpd 1.4.28 released</title>
		<link>http://www.weez.com/2010/09/lighttpd-1-4-28-released/</link>
		<comments>http://www.weez.com/2010/09/lighttpd-1-4-28-released/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 18:03:05 +0000</pubDate>
		<dc:creator>Abidoon</dc:creator>
				<category><![CDATA[Lighttpd]]></category>
		<category><![CDATA[1.4.28]]></category>
		<category><![CDATA[released]]></category>

		<guid isPermaLink="false">http://www.weez.com/2010/09/lighttpd-1-4-28-released/</guid>
		<description><![CDATA[Just in case you didn&#8217;t see the announcement on the main page: click Please head over there for more information and comments. If you want to get the latest source for any branch, you can get it from our svn repository. Documentation to do so can be obtained from this page: http://redmine.lighttpd.net/projects/lighttpd/wiki/DevelSubversion Bug reports or [...]]]></description>
			<content:encoded><![CDATA[<p>Just in case you didn&#8217;t see the announcement on the main page: <a href="http://www.lighttpd.net/2010/8/22/1-4-28">click</a></p>
<p>Please head over there for more information and comments.</p>
<p>If you want to get the latest source for any branch, you can get it from our svn repository.<br />
Documentation to do so can be obtained from this page:<br /> <a href="http://redmine.lighttpd.net/projects/lighttpd/wiki/DevelSubversion">http://redmine.lighttpd.net/projects/lighttpd/wiki/DevelSubversion</a><br />
Bug reports or feature requests can be filed in our ticket system:<br /> <a href="http://redmine.lighttpd.net/projects/lighttpd/issues/new">http://redmine.lighttpd.net/projects/lighttpd/issues/new</a><br />
Please make sure to check if there isn&#8217;t a ticket already here:<br /> <a href="http://redmine.lighttpd.net/projects/lighttpd/issues">http://redmine.lighttpd.net/projects/lighttpd/issues</a></p>
<p>
Thank you for flying light.</p>
<p>View full post on <a href="http://blog.lighttpd.net/articles/2010/08/22/lighttpd-1-4-28-released">lighty&#8217;s life</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.weez.com/2010/09/lighttpd-1-4-28-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New committer: Glen Barber (full doc/www)</title>
		<link>http://www.weez.com/2010/09/new-committer-glen-barber-full-docwww/</link>
		<comments>http://www.weez.com/2010/09/new-committer-glen-barber-full-docwww/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 18:03:03 +0000</pubDate>
		<dc:creator>Abidoon</dc:creator>
				<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[Barber]]></category>
		<category><![CDATA[committer]]></category>
		<category><![CDATA[doc/www]]></category>
		<category><![CDATA[Full]]></category>
		<category><![CDATA[Glen]]></category>

		<guid isPermaLink="false">http://www.weez.com/2010/09/new-committer-glen-barber-full-docwww/</guid>
		<description><![CDATA[View full post on FreeBSD News Flash]]></description>
			<content:encoded><![CDATA[<p>View full post on <a href="http://www.FreeBSD.org/news/newsflash.html#event20100831:01">FreeBSD News Flash</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.weez.com/2010/09/new-committer-glen-barber-full-docwww/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How long Innodb Shutdown may take</title>
		<link>http://www.weez.com/2010/09/how-long-innodb-shutdown-may-take/</link>
		<comments>http://www.weez.com/2010/09/how-long-innodb-shutdown-may-take/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 18:02:45 +0000</pubDate>
		<dc:creator>Abidoon</dc:creator>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Innodb]]></category>
		<category><![CDATA[long]]></category>
		<category><![CDATA[Shutdown]]></category>
		<category><![CDATA[Take]]></category>

		<guid isPermaLink="false">http://www.weez.com/2010/09/how-long-innodb-shutdown-may-take/</guid>
		<description><![CDATA[How long it may take MySQL with Innodb tables to shut down ? It can be quite a while. In default configuration innodb_fast_shutdown=ON the main job Innodb has to do to complete shutdown is flushing dirty buffers. The number of dirty buffers in the buffer pool varies depending on innodb_max_dirty_pages_pct as well as workload and [...]]]></description>
			<content:encoded><![CDATA[<p>How long it may take MySQL with Innodb tables to shut down ?   It can be quite a while.<br />
In default configuration  <strong>innodb_fast_shutdown=ON</strong>  the main job Innodb has to do to complete shutdown is flushing dirty buffers.  The number of dirty buffers in the buffer pool varies depending on <strong> innodb_max_dirty_pages_pct</strong>  as well as workload and <strong>innodb_log_buffer_size</strong> and  can be anywhere from 10 to 90% in the real life workloads. <strong>Innodb_buffer_pool_pages_dirty</strong> status will show you the actual data.     Now the flush speed also depends on number of factors.  First it is your storage configuration &#8211; you may be looking at less than 200 writes/sec for single entry level hard drive to tens of thousands of writes/sec for high end SSD card.    Flushing can be done using multiple threads (in XtraDB and Innodb Plugin at least) so it scales well with multiple hard drives.    The second important variable is your workload, especially how dirty pages would line up on the hard drive.  If there are a lot of sequential pages which are dirty Innodb will be able to use larger size IOs &#8211; up to 1MB flushing dirty pages which can be a lot faster than flushing data page by page. </p>
<p>So if we have system with single hard drive doing 200 IO/ssc, 48G buffer pool which is 90% dirty and completely random page writes we&#8217;ll look  at 13500 seconds or  about 5min per 1GB of Buffer pool size.<br />
This is worse case scenario though it is quite common in practice to see shutdown time of about 1min per GB of buffer pool per hard drive. </p>
<p>Baron has written a nice post how to <a href="http://www.mysqlperformanceblog.com/2009/04/15/how-to-decrease-innodb-shutdown-times/">decrease innodb shutdown time</a> which you may want to read on this topic.</p>
<hr noshade style="margin:0;height:1px" />
<p>Entry posted by peter |<br />
      <a href="http://www.mysqlperformanceblog.com/2010/09/02/how-long-innodb-shutdown-may-take/#comments">7 comments</a></p>
<p>Add to: <a href="http://del.icio.us/post?url=http://www.mysqlperformanceblog.com/2010/09/02/how-long-innodb-shutdown-may-take/&amp;title=How long Innodb Shutdown may take" title="Bookmark this post on del.icio.us"><img src="http://www.mysqlperformanceblog.com/wp-content/themes/boxy-but-gold/images/delicious.png" alt="delicious" /></a> | <a href="http://digg.com/submit?phase=2&amp;url=http://www.mysqlperformanceblog.com/2010/09/02/how-long-innodb-shutdown-may-take/&amp;title=How long Innodb Shutdown may take" title="Digg this post on Digg.com"><img src="http://www.mysqlperformanceblog.com/wp-content/themes/boxy-but-gold/images/digg.png" alt="digg" /></a> | <a href="http://reddit.com/submit?url=http://www.mysqlperformanceblog.com/2010/09/02/how-long-innodb-shutdown-may-take/&amp;title=How long Innodb Shutdown may take" title="Submit this post on reddit.com"><img src="http://www.mysqlperformanceblog.com/wp-content/themes/boxy-but-gold/images/reddit.png" alt="reddit" /></a> | <a href="http://www.netscape.com/submit/?U=http://www.mysqlperformanceblog.com/2010/09/02/how-long-innodb-shutdown-may-take/&amp;T=How long Innodb Shutdown may take" title="Vote for this article on Netscape"><img src="http://www.mysqlperformanceblog.com/wp-content/themes/boxy-but-gold/images/netscape.gif" alt="netscape" /></a> | <a href="http://www.google.com/bookmarks/mark?op=add&amp;bkmk=http://www.mysqlperformanceblog.com/2010/09/02/how-long-innodb-shutdown-may-take/&amp;title=How long Innodb Shutdown may take" title="Add to Google Bookmarks"><img src="http://www.mysqlperformanceblog.com/wp-content/themes/boxy-but-gold/images/google.png" alt="Google Bookmarks" /></a></p>
<p>View full post on <a href="http://www.mysqlperformanceblog.com/2010/09/02/how-long-innodb-shutdown-may-take/">MySQL Performance Blog</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.weez.com/2010/09/how-long-innodb-shutdown-may-take/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
	</channel>
</rss>
