<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -1 +1 @@
-{'src/merle.erl', [{outdir, &quot;ebin&quot;}]}.
+{'src/*', [{outdir, &quot;ebin&quot;}]}.</diff>
      <filename>Emakefile</filename>
    </modified>
    <modified>
      <diff>@@ -7,6 +7,9 @@ Contributors : Nick Gerakines &lt;nick@gerakines.net&gt;
 
 Info : http://github.com/joewilliams/merle/
 
+merle uses LShift's gen_server2 module/behavior for faster message queues.
+(http://hg.rabbitmq.com/rabbitmq-server/file/b95f2fd4e3f6/src/gen_server2.erl)
+
 This code is available as Open Source Software under the MIT license.
 
 </diff>
      <filename>README</filename>
    </modified>
    <modified>
      <diff>@@ -33,7 +33,7 @@
 %% Updates at http://github.com/joewilliams/merle/
 
 -module(merle).
--behaviour(gen_server).
+-behaviour(gen_server2).
 
 -author(&quot;Joe Williams &lt;joe@joetify.com&gt;&quot;).
 -version(&quot;Version: 0.2&quot;).
@@ -62,30 +62,30 @@
 
 %% @doc retrieve memcached stats
 stats() -&gt;
-	gen_server:call(?SERVER, {stats}).
+	gen_server2:call(?SERVER, {stats}).
 
 %% @doc retrieve memcached stats based on args
 stats(Args) when is_atom(Args)-&gt;
 	stats(atom_to_list(Args));
 stats(Args) -&gt;
-	gen_server:call(?SERVER, {stats, {Args}}).
+	gen_server2:call(?SERVER, {stats, {Args}}).
 
 %% @doc retrieve memcached version
 version() -&gt;
-	gen_server:call(?SERVER, {version}).
+	gen_server2:call(?SERVER, {version}).
 
 %% @doc set the verbosity level of the logging output
 verbosity(Args) when is_integer(Args) -&gt;
 	verbosity(integer_to_list(Args));
 verbosity(Args)-&gt;
-	case gen_server:call(?SERVER, {verbosity, {Args}}) of
+	case gen_server2:call(?SERVER, {verbosity, {Args}}) of
 		[&quot;OK&quot;] -&gt; ok;
 		[X] -&gt; X
 	end.
 
 %% @doc invalidate all existing items immediately
 flushall() -&gt;
-	case gen_server:call(?SERVER, {flushall}) of
+	case gen_server2:call(?SERVER, {flushall}) of
 		[&quot;OK&quot;] -&gt; ok;
 		[X] -&gt; X
 	end.
@@ -94,7 +94,7 @@ flushall() -&gt;
 flushall(Delay) when is_integer(Delay) -&gt;
 	flushall(integer_to_list(Delay));
 flushall(Delay) -&gt;
-	case gen_server:call(?SERVER, {flushall, {Delay}}) of
+	case gen_server2:call(?SERVER, {flushall, {Delay}}) of
 		[&quot;OK&quot;] -&gt; ok;
 		[X] -&gt; X
 	end.
@@ -103,7 +103,7 @@ flushall(Delay) -&gt;
 getkey(Key) when is_atom(Key) -&gt;
 	getkey(atom_to_list(Key));
 getkey(Key) -&gt;
-	case gen_server:call(?SERVER, {getkey,{Key}}) of
+	case gen_server2:call(?SERVER, {getkey,{Key}}) of
 	    [&quot;END&quot;] -&gt; undefined;
 	    [X] -&gt; X
 	end.
@@ -112,7 +112,7 @@ getkey(Key) -&gt;
 getskey(Key) when is_atom(Key) -&gt;
 	getskey(atom_to_list(Key));
 getskey(Key) -&gt;
-	case gen_server:call(?SERVER, {getskey,{Key}}) of
+	case gen_server2:call(?SERVER, {getskey,{Key}}) of
 	    [&quot;END&quot;] -&gt; undefined;
 	    [X] -&gt; X
 	end.
@@ -126,7 +126,7 @@ delete(Key, Time) when is_atom(Key) -&gt;
 delete(Key, Time) when is_integer(Time) -&gt;
 	delete(Key, integer_to_list(Time));
 delete(Key, Time) -&gt;
-	case gen_server:call(?SERVER, {delete, {Key, Time}}) of
+	case gen_server2:call(?SERVER, {delete, {Key, Time}}) of
 		[&quot;DELETED&quot;] -&gt; ok;
 		[&quot;NOT_FOUND&quot;] -&gt; not_found;
 		[X] -&gt; X
@@ -166,7 +166,7 @@ set(Key, Flag, ExpTime, Value) when is_integer(Flag) -&gt;
 set(Key, Flag, ExpTime, Value) when is_integer(ExpTime) -&gt;
     set(Key, Flag, integer_to_list(ExpTime), Value);
 set(Key, Flag, ExpTime, Value) -&gt;
-	case gen_server:call(?SERVER, {set, {Key, Flag, ExpTime, Value}}) of
+	case gen_server2:call(?SERVER, {set, {Key, Flag, ExpTime, Value}}) of
 	    [&quot;STORED&quot;] -&gt; ok;
 	    [&quot;NOT_STORED&quot;] -&gt; not_stored;
 	    [X] -&gt; X
@@ -184,7 +184,7 @@ add(Key, Flag, ExpTime, Value) when is_integer(Flag) -&gt;
 add(Key, Flag, ExpTime, Value) when is_integer(ExpTime) -&gt;
     add(Key, Flag, integer_to_list(ExpTime), Value);
 add(Key, Flag, ExpTime, Value) -&gt;
-	case gen_server:call(?SERVER, {add, {Key, Flag, ExpTime, Value}}) of
+	case gen_server2:call(?SERVER, {add, {Key, Flag, ExpTime, Value}}) of
 	    [&quot;STORED&quot;] -&gt; ok;
 	    [&quot;NOT_STORED&quot;] -&gt; not_stored;
 	    [X] -&gt; X
@@ -202,7 +202,7 @@ replace(Key, Flag, ExpTime, Value) when is_integer(Flag) -&gt;
 replace(Key, Flag, ExpTime, Value) when is_integer(ExpTime) -&gt;
     replace(Key, Flag, integer_to_list(ExpTime), Value);
 replace(Key, Flag, ExpTime, Value) -&gt;
-	case gen_server:call(?SERVER, {replace, {Key, Flag, ExpTime, Value}}) of
+	case gen_server2:call(?SERVER, {replace, {Key, Flag, ExpTime, Value}}) of
 	    [&quot;STORED&quot;] -&gt; ok;
 	    [&quot;NOT_STORED&quot;] -&gt; not_stored;
 	    [X] -&gt; X
@@ -222,7 +222,7 @@ cas(Key, Flag, ExpTime, CasUniq, Value) when is_integer(ExpTime) -&gt;
 cas(Key, Flag, ExpTime, CasUniq, Value) when is_integer(CasUniq) -&gt;
     cas(Key, Flag, ExpTime, integer_to_list(CasUniq), Value);
 cas(Key, Flag, ExpTime, CasUniq, Value) -&gt;
-	case gen_server:call(?SERVER, {cas, {Key, Flag, ExpTime, CasUniq, Value}}) of
+	case gen_server2:call(?SERVER, {cas, {Key, Flag, ExpTime, CasUniq, Value}}) of
 	    [&quot;STORED&quot;] -&gt; ok;
 	    [&quot;NOT_STORED&quot;] -&gt; not_stored;
 	    [X] -&gt; X
@@ -238,12 +238,12 @@ connect(Host, Port) -&gt;
 
 %% @doc disconnect from memcached
 disconnect() -&gt;
-	gen_server:call(?SERVER, {stop}),
+	gen_server2:call(?SERVER, {stop}),
 	ok.
 
 %% @private
 start_link(Host, Port) -&gt;
-    gen_server:start_link({local, ?SERVER}, ?MODULE, [Host, Port], []).
+    gen_server2:start_link({local, ?SERVER}, ?MODULE, [Host, Port], []).
 
 %% @private
 init([Host, Port]) -&gt;</diff>
      <filename>src/merle.erl</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>e064d0da471ac99a684109772ba17d2c1781bfa2</id>
    </parent>
  </parents>
  <author>
    <name>zeusfaber</name>
    <email>joe@joetify.com</email>
  </author>
  <url>http://github.com/cstar/merle/commit/c7b90c5512d8f95442b40d81c9ceefb8e3a566e3</url>
  <id>c7b90c5512d8f95442b40d81c9ceefb8e3a566e3</id>
  <committed-date>2009-02-06T12:19:17-08:00</committed-date>
  <authored-date>2009-02-06T12:19:17-08:00</authored-date>
  <message>changed out gen_server for lshift's gen_server2</message>
  <tree>6a2530fe7a90d29a6e086007e4d5c37071c333b7</tree>
  <committer>
    <name>zeusfaber</name>
    <email>joe@joetify.com</email>
  </committer>
</commit>
