Hi,<br><br>Yes that's correct. Since the actual document could be extremely large it's not sent over Spread. <br><br>Instead, a transaction container is created, the document is compressed and stored under that transaction id in memcached and the transaction id is sent. Memcached becomes kind of a network IPC.
<br><br>Each node receives the message and pulls the document from memcached, once all nodes are ready to process they message the transaction origionator and and says its ready to commit or its failed.<br><br>Once all messages are recieved then the final commit message is sent otherwise children are told to fail the transaction altogether.
<br><br>also libevent is used to monitor the spread socket.<br><br>-Jake<br> <br><div class="gmail_quote">On Nov 6, 2007 10:50 AM, John Schultz <<a href="mailto:jschultz@spreadconcepts.com">jschultz@spreadconcepts.com</a>
> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Just out of curiosity, you implement your multi-master replication using<br>a 2-phase commit protocol over Spread?
<br><br>Cheers!<br><br>---<br>John Schultz<br>Spread Concepts<br>Phn: 443 838 2200<br><div class="Ih2E3d"><br>On Mon, 5 Nov 2007, Jake Luciani wrote:<br><br>> Hi,<br>><br>> I'm writing to announce the open source release of a project I've built
<br>> which incorporates spread.<br>><br>> ------------------------------------------------------------------------------------------------------------------<br>><br>> Thrudb is a set of simple services built on top of Facebook's Thrift
<br>> framework<br>> that provides indexing and document storage services for building and<br>> scaling websites.<br>> Its purpose is to offer web developers flexible, fast and easy-to-use<br>> services<br>
> which can enhance or replace traditional data storage and access layers.<br>><br>> *Thrudb Features:*<br>><br>> - Client libraries for most languages<br>> - Multi-master replication<br>> - Incremental backups and redo logging
<br>> - Multiple storage backends (S3 included)<br>> - Built for horizontal scalability<br>> - Simple and powerful search api (Lucene)<br>><br>> <a href="http://thrudb.googlecode.com" target="_blank">
http://thrudb.googlecode.com</a><br>> --------------------------------------------------------------------------------------------------------------------<br>><br>><br></div>> I've also written up a blog post about it here <
<a href="http://3.rdrail.net/blog" target="_blank">http://3.rdrail.net/blog</a>><br><div class="Ih2E3d">><br>> Spread provides multi-master replication with atomic writes.<br>> I've used this to deploy my site reliably on Amazon EC2.
<br>><br>> Cheers,<br>><br>> Jake<br>><br><br></div>_______________________________________________<br>Spread-users mailing list<br><a href="mailto:Spread-users@lists.spread.org">Spread-users@lists.spread.org
</a><br><a href="http://lists.spread.org/mailman/listinfo/spread-users" target="_blank">http://lists.spread.org/mailman/listinfo/spread-users</a><br></blockquote></div><br>