<?xml version="1.0" encoding="utf-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments for Eric Bergen</title>
	<atom:link href="http://ebergen.net/wordpress/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://ebergen.net/wordpress</link>
	<description>You will probably want some waders, a pickaxe, and one of those hats with a light on it before you go in here.</description>
	<lastBuildDate>Thu, 29 Dec 2011 18:25:05 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
	<item>
		<title>Comment on Keyboard of Champions. by Eric Bergen &#187; Blog Archive &#187; Changing caps lock to control with .Xmodmap</title>
		<link>http://ebergen.net/wordpress/2005/01/15/keyboard-of-champions/comment-page-1/#comment-376040</link>
		<dc:creator>Eric Bergen &#187; Blog Archive &#187; Changing caps lock to control with .Xmodmap</dc:creator>
		<pubDate>Thu, 29 Dec 2011 18:25:05 +0000</pubDate>
		<guid isPermaLink="false">/?p=8#comment-376040</guid>
		<description>[...] 2011-12-29 I still use my HHK at work but switched back to a regular style keyboard at home.]    Category: Geek, QFTPWE [...]</description>
		<content:encoded><![CDATA[<p>[...] 2011-12-29 I still use my HHK at work but switched back to a regular style keyboard at home.]    Category: Geek, QFTPWE [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Changing caps lock to control with .Xmodmap by Eric Bergen</title>
		<link>http://ebergen.net/wordpress/2011/12/28/changing-caps-lock-to-control-with-xmodmap/comment-page-1/#comment-376039</link>
		<dc:creator>Eric Bergen</dc:creator>
		<pubDate>Thu, 29 Dec 2011 18:22:33 +0000</pubDate>
		<guid isPermaLink="false">http://ebergen.net/wordpress/?p=538#comment-376039</guid>
		<description>My wrist started to hurt after hitting the original control key for a few years. I never use caps lock so remapping caps lock to control where I can use control with less wrist movement makes sense. The caps lock key was taking up prime keyboard real estate and serving no purpose other than me accidentally turning on caps lock when I didn&#039;t want it.</description>
		<content:encoded><![CDATA[<p>My wrist started to hurt after hitting the original control key for a few years. I never use caps lock so remapping caps lock to control where I can use control with less wrist movement makes sense. The caps lock key was taking up prime keyboard real estate and serving no purpose other than me accidentally turning on caps lock when I didn&#8217;t want it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Changing caps lock to control with .Xmodmap by Pedro</title>
		<link>http://ebergen.net/wordpress/2011/12/28/changing-caps-lock-to-control-with-xmodmap/comment-page-1/#comment-375997</link>
		<dc:creator>Pedro</dc:creator>
		<pubDate>Thu, 29 Dec 2011 13:34:01 +0000</pubDate>
		<guid isPermaLink="false">http://ebergen.net/wordpress/?p=538#comment-375997</guid>
		<description>What&#039;s the purpose of remapping CapsLock to Control? I have to hit it with the pinky anyway, so it&#039;s not super convenient.</description>
		<content:encoded><![CDATA[<p>What&#8217;s the purpose of remapping CapsLock to Control? I have to hit it with the pinky anyway, so it&#8217;s not super convenient.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on fadvise syscall, myisam data file caching, and a lesson learned in debugging by Eric Wheeler</title>
		<link>http://ebergen.net/wordpress/2009/06/11/fadvise-syscall-myisam-data-file-caching-and-a-lesson-learned-in-debugging/comment-page-1/#comment-367897</link>
		<dc:creator>Eric Wheeler</dc:creator>
		<pubDate>Mon, 21 Nov 2011 06:37:00 +0000</pubDate>
		<guid isPermaLink="false">http://ebergen.net/wordpress/?p=271#comment-367897</guid>
		<description>Interesting article, I wonder: do you have a simple binary that opens the .MYD, calls fadvise on the read-only fd, and daemonizes, and would this be sufficient to get the kernel to hold the file content cached?  Can you or have you released your cache-pinning program?

I&#039;m looking to use fadvise for an opposite example: I need to set FADV_NOREUSE for block-device backups since it is pointless to cache a sequential block-device read when it will only be read once.

In this case, I am using the rdiff to replicate LVM snapshots, and was thinking of writing an LD_PRELOAD wrapper for open() and fadvising the resulting file descriptor instead of hacking the rdiff code.  

Since you have dug into the depths of fadvise, do you you have any advice here?

-Eric</description>
		<content:encoded><![CDATA[<p>Interesting article, I wonder: do you have a simple binary that opens the .MYD, calls fadvise on the read-only fd, and daemonizes, and would this be sufficient to get the kernel to hold the file content cached?  Can you or have you released your cache-pinning program?</p>
<p>I&#8217;m looking to use fadvise for an opposite example: I need to set FADV_NOREUSE for block-device backups since it is pointless to cache a sequential block-device read when it will only be read once.</p>
<p>In this case, I am using the rdiff to replicate LVM snapshots, and was thinking of writing an LD_PRELOAD wrapper for open() and fadvising the resulting file descriptor instead of hacking the rdiff code.  </p>
<p>Since you have dug into the depths of fadvise, do you you have any advice here?</p>
<p>-Eric</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Naming Conventions In MySQL by Antony</title>
		<link>http://ebergen.net/wordpress/2005/03/14/naming-conventions-in-mysql/comment-page-1/#comment-358791</link>
		<dc:creator>Antony</dc:creator>
		<pubDate>Sun, 02 Oct 2011 23:06:15 +0000</pubDate>
		<guid isPermaLink="false">/?p=33#comment-358791</guid>
		<description>I enforce the &quot;no plural&quot; theory just because I often use ORMs such as Propel or Doctrine. These auto-generate functions that fetch relationships between tables, and these kind of function names often append an &quot;s&quot;. So if I was to call a table &quot;my_users&quot;, I&#039;d end up with an automatically generated function name &quot;getMyUserss()&quot;... which just looks weird.</description>
		<content:encoded><![CDATA[<p>I enforce the &#8220;no plural&#8221; theory just because I often use ORMs such as Propel or Doctrine. These auto-generate functions that fetch relationships between tables, and these kind of function names often append an &#8220;s&#8221;. So if I was to call a table &#8220;my_users&#8221;, I&#8217;d end up with an automatically generated function name &#8220;getMyUserss()&#8221;&#8230; which just looks weird.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Is group_concat_max_len in bytes or characters? by Eric Bergen</title>
		<link>http://ebergen.net/wordpress/2011/09/05/is-group_concat_max_len-in-bytes-or-characters/comment-page-1/#comment-352159</link>
		<dc:creator>Eric Bergen</dc:creator>
		<pubDate>Tue, 06 Sep 2011 15:15:56 +0000</pubDate>
		<guid isPermaLink="false">http://ebergen.net/wordpress/?p=517#comment-352159</guid>
		<description>I prefer non group_concat queries because the vast majority of the time I see it used is in some bad attempt to mash together two queries that don&#039;t belong as one. That along with the issue I pointed out above and the surprise truncation are enough to keep it on my list of features that cause more harm than good. I&#039;m not calling to get rid of it, I&#039;m simply pointing out another gotcha that I didn&#039;t know about. I think implementing roland&#039;s limit idea will go a long away towards fixing it.</description>
		<content:encoded><![CDATA[<p>I prefer non group_concat queries because the vast majority of the time I see it used is in some bad attempt to mash together two queries that don&#8217;t belong as one. That along with the issue I pointed out above and the surprise truncation are enough to keep it on my list of features that cause more harm than good. I&#8217;m not calling to get rid of it, I&#8217;m simply pointing out another gotcha that I didn&#8217;t know about. I think implementing roland&#8217;s limit idea will go a long away towards fixing it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Is group_concat_max_len in bytes or characters? by Shlomi Noach</title>
		<link>http://ebergen.net/wordpress/2011/09/05/is-group_concat_max_len-in-bytes-or-characters/comment-page-1/#comment-352044</link>
		<dc:creator>Shlomi Noach</dc:creator>
		<pubDate>Tue, 06 Sep 2011 05:46:50 +0000</pubDate>
		<guid isPermaLink="false">http://ebergen.net/wordpress/?p=517#comment-352044</guid>
		<description>Hi,
Roland is the true master of GROUP_CONCAT, but he understates its importance in his comment. GROUP_CONCAT grants you power that cannot otherwise be achieved within a query. It cannot be mimicked by other syntax or commands.
It is, in essence, a poor attempt to provide Window Functions. It does not do that well, but it revolves around the same kind of power you get by window functions.
I have written and encountered numerous queries where GROUP_CONCAT saved the day; made for great speed improvements, or made possible what was considered impossible. 
I don&#039;t want to sound superlative, sorry if I do.

Sometimes it&#039;s not *two* queries one would have to issue, but rather 10,000 queries. So it is definitely not a rule of thumb, in my opinion, to prefer non-GROUP_CONCAT queries.

Perhaps not in the specific case you have presented, but generally speaking, and assuming people set their group_concat_max_len param to a reasonable value (and the default is terribly low), I do recommend getting the hang of it.</description>
		<content:encoded><![CDATA[<p>Hi,<br />
Roland is the true master of GROUP_CONCAT, but he understates its importance in his comment. GROUP_CONCAT grants you power that cannot otherwise be achieved within a query. It cannot be mimicked by other syntax or commands.<br />
It is, in essence, a poor attempt to provide Window Functions. It does not do that well, but it revolves around the same kind of power you get by window functions.<br />
I have written and encountered numerous queries where GROUP_CONCAT saved the day; made for great speed improvements, or made possible what was considered impossible.<br />
I don&#8217;t want to sound superlative, sorry if I do.</p>
<p>Sometimes it&#8217;s not *two* queries one would have to issue, but rather 10,000 queries. So it is definitely not a rule of thumb, in my opinion, to prefer non-GROUP_CONCAT queries.</p>
<p>Perhaps not in the specific case you have presented, but generally speaking, and assuming people set their group_concat_max_len param to a reasonable value (and the default is terribly low), I do recommend getting the hang of it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Is group_concat_max_len in bytes or characters? by Roland Bouman</title>
		<link>http://ebergen.net/wordpress/2011/09/05/is-group_concat_max_len-in-bytes-or-characters/comment-page-1/#comment-351954</link>
		<dc:creator>Roland Bouman</dc:creator>
		<pubDate>Mon, 05 Sep 2011 20:15:31 +0000</pubDate>
		<guid isPermaLink="false">http://ebergen.net/wordpress/?p=517#comment-351954</guid>
		<description>Hi Eric, 

although I agree there is a lot not to like about GROUP_CONCAT, I find it a very useful tool if used right. There&#039;s one thing that I found a but puzzling in your post:

&quot;the application that was using group_concat was just parsing the result back into an array anyway. ... This is what I recommend for fixing group_concat. The risk of having truncated values or running out of memory is too much to justify saving the cost of issuing a second query.&quot;

Wouldn&#039;t this just mean you&#039;d run out of memory when you try to create the array? I mean, whether the memory is in a string or in an array, the bytes have to be in memory somewhere, no? 

(BTW, I absolutely agree the truncation is a bad thing, that should be an error. And I think GROUP_CONCAT should get a LIMIT clause, not to prevent truncation but there are cases where one could use that to make queries more efficient and less memory intensive)</description>
		<content:encoded><![CDATA[<p>Hi Eric, </p>
<p>although I agree there is a lot not to like about GROUP_CONCAT, I find it a very useful tool if used right. There&#8217;s one thing that I found a but puzzling in your post:</p>
<p>&#8220;the application that was using group_concat was just parsing the result back into an array anyway. &#8230; This is what I recommend for fixing group_concat. The risk of having truncated values or running out of memory is too much to justify saving the cost of issuing a second query.&#8221;</p>
<p>Wouldn&#8217;t this just mean you&#8217;d run out of memory when you try to create the array? I mean, whether the memory is in a string or in an array, the bytes have to be in memory somewhere, no? </p>
<p>(BTW, I absolutely agree the truncation is a bad thing, that should be an error. And I think GROUP_CONCAT should get a LIMIT clause, not to prevent truncation but there are cases where one could use that to make queries more efficient and less memory intensive)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on The #mysql drinking game by Eric Bergen</title>
		<link>http://ebergen.net/wordpress/2011/08/12/the-mysql-drinking-game/comment-page-1/#comment-348187</link>
		<dc:creator>Eric Bergen</dc:creator>
		<pubDate>Sat, 13 Aug 2011 15:24:15 +0000</pubDate>
		<guid isPermaLink="false">http://ebergen.net/wordpress/?p=512#comment-348187</guid>
		<description>How dare you! ;)</description>
		<content:encoded><![CDATA[<p>How dare you! <img src='http://ebergen.net/wordpress/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on The #mysql drinking game by David Shrewsbury</title>
		<link>http://ebergen.net/wordpress/2011/08/12/the-mysql-drinking-game/comment-page-1/#comment-348178</link>
		<dc:creator>David Shrewsbury</dc:creator>
		<pubDate>Sat, 13 Aug 2011 14:39:57 +0000</pubDate>
		<guid isPermaLink="false">http://ebergen.net/wordpress/?p=512#comment-348178</guid>
		<description>Don&#039;t forget to drink when an op acts all &quot;holier than thou&quot; rather than actually helping.</description>
		<content:encoded><![CDATA[<p>Don&#8217;t forget to drink when an op acts all &#8220;holier than thou&#8221; rather than actually helping.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

