From user-return-3898-apmail-couchdb-user-archive=couchdb.apache.org@couchdb.apache.org Sat Mar 07 10:08:42 2009 Return-Path: Delivered-To: apmail-couchdb-user-archive@www.apache.org Received: (qmail 4216 invoked from network); 7 Mar 2009 10:08:42 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 7 Mar 2009 10:08:42 -0000 Received: (qmail 71800 invoked by uid 500); 7 Mar 2009 10:08:40 -0000 Delivered-To: apmail-couchdb-user-archive@couchdb.apache.org Received: (qmail 71759 invoked by uid 500); 7 Mar 2009 10:08:40 -0000 Mailing-List: contact user-help@couchdb.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@couchdb.apache.org Delivered-To: mailing list user@couchdb.apache.org Received: (qmail 71747 invoked by uid 99); 7 Mar 2009 10:08:40 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 07 Mar 2009 02:08:40 -0800 X-ASF-Spam-Status: No, hits=2.4 required=10.0 tests=FS_REPLICA,SPF_NEUTRAL X-Spam-Check-By: apache.org Received-SPF: neutral (nike.apache.org: local policy) Received: from [83.97.50.139] (HELO jan.prima.de) (83.97.50.139) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 07 Mar 2009 10:08:30 +0000 Received: from [10.0.1.6] (e178247183.adsl.alicedsl.de [::ffff:85.178.247.183]) (AUTH: LOGIN jan, TLS: TLSv1/SSLv3,128bits,AES128-SHA) by jan.prima.de with esmtp; Sat, 07 Mar 2009 10:08:08 +0000 Message-Id: <6B20EBBA-8AB4-4D1A-93A2-90A1FAFBCEEC@apache.org> From: Jan Lehnardt To: user@couchdb.apache.org In-Reply-To: <56a83cd00903070158yb0eac89xaa433c6f120ee667@mail.gmail.com> Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit Mime-Version: 1.0 (Apple Message framework v930.3) Subject: Re: Peer to peer replication Date: Sat, 7 Mar 2009 11:07:34 +0100 References: <56a83cd00903070158yb0eac89xaa433c6f120ee667@mail.gmail.com> X-Mailer: Apple Mail (2.930.3) X-Virus-Checked: Checked by ClamAV on apache.org On 7 Mar 2009, at 10:58, David Van Couvering wrote: > Hi, all. I've been chewing on the uses of CouchDB, and it seems it > could be > very useful for peer-to-peer document sharing between *individuals* > - a > community of collaborators on the web. > > For example, a community wants to collaborate on a set of documents, > but > would rather not have to go through setting up some kind of web > site. They > just want to set up a folder that each member sees on their local > machine > and then have this folder be shared amongst the community. > > CouchDB seems very close to being the perfect technology for this. > But I do > have some questions... (and potentially more as I chew on this > further). This is an intended use-case for CouchDB. :) > - What protocol is used for replication across nodes? I'm assuming > it's > HTTP but just checking. In a peer-to-peer system, this sounds like > it means > that each participant has to open up their HTTP port for replication > to > work. Is that correct? Yes. > - A community collaborating on a document would probably like to be > able to > view older versions, view differences between versions, revert to > older > versions, etc. I couldn't immediately find if CouchDB can retain > older > versions indefinitely, or if older versions get "cleaned up" over > time. I > suspect that the multi-version support in CouchDB isn't really > intended for > that usage - it's more for lock-free writes. I suspect that if I > wanted to > have this kind of functionality I would have to layer those > semantics on top > of CouchDB using one document for each revision and providing my own > diff > functionality, etc. Is that right? To the point. I'm currently working on a CouchApp wiki that sort of is supposed to do all this and would show how to do versions in CouchDB without the MVCC system. Nothing to see yet but I'll keep you posted. Cheers Jan --