<?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 on: Extending Tokyo Cabinet DB with Lua</title>
	<atom:link href="http://www.igvita.com/2009/07/13/extending-tokyo-cabinet-db-with-lua/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.igvita.com/2009/07/13/extending-tokyo-cabinet-db-with-lua/</link>
	<description>A goal is a dream with a deadline.</description>
	<pubDate>Thu, 11 Mar 2010 20:12:15 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7.1</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Ilya Grigorik</title>
		<link>http://www.igvita.com/2009/07/13/extending-tokyo-cabinet-db-with-lua/comment-page-1/#comment-210671</link>
		<dc:creator>Ilya Grigorik</dc:creator>
		<pubDate>Sun, 30 Aug 2009 23:12:31 +0000</pubDate>
		<guid isPermaLink="false">http://www.igvita.com/?p=583#comment-210671</guid>
		<description>Awesome! Added your example to the tokyo-recipes rdoc file. :-)</description>
		<content:encoded><![CDATA[<p>Awesome! Added your example to the tokyo-recipes rdoc file. :-)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Marco Lazzeri</title>
		<link>http://www.igvita.com/2009/07/13/extending-tokyo-cabinet-db-with-lua/comment-page-1/#comment-210644</link>
		<dc:creator>Marco Lazzeri</dc:creator>
		<pubDate>Sun, 30 Aug 2009 16:18:29 +0000</pubDate>
		<guid isPermaLink="false">http://www.igvita.com/?p=583#comment-210644</guid>
		<description>Ilya, thanks for your answer. Following your suggestion I kept trying and...

$ curl -i -X POST -H "X-TT-XNAME: echo" http://localhost:1978/foo -d "bar"

HTTP/1.1 200 OK
Content-Type: application/octet-stream
Content-Length: 7

foo:bar


This is awesome!</description>
		<content:encoded><![CDATA[<p>Ilya, thanks for your answer. Following your suggestion I kept trying and&#8230;</p>
<p>$ curl -i -X POST -H &#8220;X-TT-XNAME: echo&#8221; <a href="http://localhost:1978/foo" rel="nofollow">http://localhost:1978/foo</a> -d &#8220;bar&#8221;</p>
<p>HTTP/1.1 200 OK<br />
Content-Type: application/octet-stream<br />
Content-Length: 7</p>
<p>foo:bar</p>
<p>This is awesome!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ilya Grigorik</title>
		<link>http://www.igvita.com/2009/07/13/extending-tokyo-cabinet-db-with-lua/comment-page-1/#comment-210596</link>
		<dc:creator>Ilya Grigorik</dc:creator>
		<pubDate>Sun, 30 Aug 2009 02:25:13 +0000</pubDate>
		<guid isPermaLink="false">http://www.igvita.com/?p=583#comment-210596</guid>
		<description>Marco, that's a great question. I pinged Mikio to confirm, but it does look like there is some support for this. From the docs:

"POST" should have the header "X-TT-XNAME" whose value stands for the function name to be called. "POST" can have the header "X-TT-XOPTS" whose value stands for bitwise-or options of 1 (record locking) and 2 (global locking).</description>
		<content:encoded><![CDATA[<p>Marco, that&#8217;s a great question. I pinged Mikio to confirm, but it does look like there is some support for this. From the docs:</p>
<p>&#8220;POST&#8221; should have the header &#8220;X-TT-XNAME&#8221; whose value stands for the function name to be called. &#8220;POST&#8221; can have the header &#8220;X-TT-XOPTS&#8221; whose value stands for bitwise-or options of 1 (record locking) and 2 (global locking).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Marco Lazzeri</title>
		<link>http://www.igvita.com/2009/07/13/extending-tokyo-cabinet-db-with-lua/comment-page-1/#comment-209776</link>
		<dc:creator>Marco Lazzeri</dc:creator>
		<pubDate>Fri, 21 Aug 2009 15:04:44 +0000</pubDate>
		<guid isPermaLink="false">http://www.igvita.com/?p=583#comment-209776</guid>
		<description>Great article! ...as usual, thank you Ilya ; )

I was wondering: is it possible to call the Lua extensions using the REST interface?</description>
		<content:encoded><![CDATA[<p>Great article! &#8230;as usual, thank you Ilya ; )</p>
<p>I was wondering: is it possible to call the Lua extensions using the REST interface?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: X</title>
		<link>http://www.igvita.com/2009/07/13/extending-tokyo-cabinet-db-with-lua/comment-page-1/#comment-208358</link>
		<dc:creator>X</dc:creator>
		<pubDate>Tue, 04 Aug 2009 00:19:45 +0000</pubDate>
		<guid isPermaLink="false">http://www.igvita.com/?p=583#comment-208358</guid>
		<description>Wow Lua is a great languange. Much better than Ruby. 

It's amazing how under-hyped it is.</description>
		<content:encoded><![CDATA[<p>Wow Lua is a great languange. Much better than Ruby. </p>
<p>It&#8217;s amazing how under-hyped it is.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dev Blog AF83 &#187; Blog Archive &#187; Veille technologique : OS, Navigateurs, HTML, CSS, Ruby, Rails, Javascript, Langages, VCS, DB, Geo</title>
		<link>http://www.igvita.com/2009/07/13/extending-tokyo-cabinet-db-with-lua/comment-page-1/#comment-207504</link>
		<dc:creator>Dev Blog AF83 &#187; Blog Archive &#187; Veille technologique : OS, Navigateurs, HTML, CSS, Ruby, Rails, Javascript, Langages, VCS, DB, Geo</dc:creator>
		<pubDate>Tue, 28 Jul 2009 16:10:02 +0000</pubDate>
		<guid isPermaLink="false">http://www.igvita.com/?p=583#comment-207504</guid>
		<description>[...] http://www.igvita.com/2009/07/13/extending-tokyo-cabinet-db-with-lua/ : un tutorial sur l&#8217;ajout de fonctions à Tokoy Cabinet avec Lua [...]</description>
		<content:encoded><![CDATA[<p>[...] <a href="http://www.igvita.com/2009/07/13/extending-tokyo-cabinet-db-with-lua/" rel="nofollow">http://www.igvita.com/2009/07/13/extending-tokyo-cabinet-db-with-lua/</a> : un tutorial sur l&#8217;ajout de fonctions à Tokoy Cabinet avec Lua [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: rufus-tokyo 1.0.0 &#171; processi</title>
		<link>http://www.igvita.com/2009/07/13/extending-tokyo-cabinet-db-with-lua/comment-page-1/#comment-206355</link>
		<dc:creator>rufus-tokyo 1.0.0 &#171; processi</dc:creator>
		<pubDate>Thu, 23 Jul 2009 01:24:55 +0000</pubDate>
		<guid isPermaLink="false">http://www.igvita.com/?p=583#comment-206355</guid>
		<description>[...] those of you interested in extending Tokyo Tyrant via Lua functions, I warmly recommend Ilya Grigork&#8217;s post about [...]</description>
		<content:encoded><![CDATA[<p>[...] those of you interested in extending Tokyo Tyrant via Lua functions, I warmly recommend Ilya Grigork&#8217;s post about [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ilya Grigorik</title>
		<link>http://www.igvita.com/2009/07/13/extending-tokyo-cabinet-db-with-lua/comment-page-1/#comment-206100</link>
		<dc:creator>Ilya Grigorik</dc:creator>
		<pubDate>Wed, 22 Jul 2009 00:18:02 +0000</pubDate>
		<guid isPermaLink="false">http://www.igvita.com/?p=583#comment-206100</guid>
		<description>Pedro, my understanding is that the Lua extensions have to be loaded at startup. I haven't seen any mechanism to load it additional ones at runtime. Having said that, now I'm curious.. because that would certainly be a nice addition.

For benchmarks, there are a few that I've done myself, and more available on github. Take a look at my original post on TC, there are a couple of links in the comments. 

As far as versioning goes, the BTree engine is certainly one route. Alternatively, can also be implemented as an extension, of course!</description>
		<content:encoded><![CDATA[<p>Pedro, my understanding is that the Lua extensions have to be loaded at startup. I haven&#8217;t seen any mechanism to load it additional ones at runtime. Having said that, now I&#8217;m curious.. because that would certainly be a nice addition.</p>
<p>For benchmarks, there are a few that I&#8217;ve done myself, and more available on github. Take a look at my original post on TC, there are a couple of links in the comments. </p>
<p>As far as versioning goes, the BTree engine is certainly one route. Alternatively, can also be implemented as an extension, of course!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: pedro mg</title>
		<link>http://www.igvita.com/2009/07/13/extending-tokyo-cabinet-db-with-lua/comment-page-1/#comment-205973</link>
		<dc:creator>pedro mg</dc:creator>
		<pubDate>Tue, 21 Jul 2009 14:51:03 +0000</pubDate>
		<guid isPermaLink="false">http://www.igvita.com/?p=583#comment-205973</guid>
		<description>Hi, can (Lua) extensions be dynamically loaded into the server ? Or does it need to be restarted ?

Did you benchmark TC (BTree+) against CouchDB ? One cool feature in CouchDB is the document "versioning" ability. Updates on TC get to be versioned ?</description>
		<content:encoded><![CDATA[<p>Hi, can (Lua) extensions be dynamically loaded into the server ? Or does it need to be restarted ?</p>
<p>Did you benchmark TC (BTree+) against CouchDB ? One cool feature in CouchDB is the document &#8220;versioning&#8221; ability. Updates on TC get to be versioned ?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Eivind Uggedal</title>
		<link>http://www.igvita.com/2009/07/13/extending-tokyo-cabinet-db-with-lua/comment-page-1/#comment-205653</link>
		<dc:creator>Eivind Uggedal</dc:creator>
		<pubDate>Mon, 20 Jul 2009 10:29:42 +0000</pubDate>
		<guid isPermaLink="false">http://www.igvita.com/?p=583#comment-205653</guid>
		<description>Ilya: No, I'm not using it in production. I did some refactorings and by the help of _fwmkeys() I was able to find a solution not needing sets. Serialized values can be a problem since I'm doing multi-master replication with relatively high latency (across the US and soon Europe).</description>
		<content:encoded><![CDATA[<p>Ilya: No, I&#8217;m not using it in production. I did some refactorings and by the help of _fwmkeys() I was able to find a solution not needing sets. Serialized values can be a problem since I&#8217;m doing multi-master replication with relatively high latency (across the US and soon Europe).</p>
]]></content:encoded>
	</item>
</channel>
</rss>
