Return-Path: Delivered-To: apmail-couchdb-dev-archive@www.apache.org Received: (qmail 41427 invoked from network); 19 May 2010 21:32:36 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 19 May 2010 21:32:36 -0000 Received: (qmail 8090 invoked by uid 500); 19 May 2010 21:32:35 -0000 Delivered-To: apmail-couchdb-dev-archive@couchdb.apache.org Received: (qmail 8044 invoked by uid 500); 19 May 2010 21:32:35 -0000 Mailing-List: contact dev-help@couchdb.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@couchdb.apache.org Delivered-To: mailing list dev@couchdb.apache.org Received: (qmail 8036 invoked by uid 99); 19 May 2010 21:32:35 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 19 May 2010 21:32:35 +0000 X-ASF-Spam-Status: No, hits=4.3 required=10.0 tests=FS_REPLICA,SPF_NEUTRAL,T_FRT_BELOW2 X-Spam-Check-By: apache.org Received-SPF: neutral (nike.apache.org: local policy) Received: from [74.125.82.52] (HELO mail-ww0-f52.google.com) (74.125.82.52) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 19 May 2010 21:32:26 +0000 Received: by wwb22 with SMTP id 22so1085072wwb.11 for ; Wed, 19 May 2010 14:32:06 -0700 (PDT) Received: by 10.227.134.142 with SMTP id j14mr8393493wbt.18.1274304726196; Wed, 19 May 2010 14:32:06 -0700 (PDT) Received: from [10.0.1.245] (h-74-1-186-35.snfccasy.static.covad.net [74.1.186.35]) by mx.google.com with ESMTPS id z33sm59088297wbd.19.2010.05.19.14.32.04 (version=TLSv1/SSLv3 cipher=RC4-MD5); Wed, 19 May 2010 14:32:05 -0700 (PDT) Sender: J Chris Anderson Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Apple Message framework v1078) Subject: Re: _replicator DB From: J Chris Anderson In-Reply-To: Date: Wed, 19 May 2010 14:32:01 -0700 Content-Transfer-Encoding: quoted-printable Message-Id: <8A76E3FF-5839-4B48-855E-8A35B7E7A0AE@apache.org> References: <8A1BC8DD-9794-4D6C-8441-09ACDEAA5CA6@dionne-associates.com> <92361758-9D77-430A-A88E-C1995D75453A@googlemail.com> <3F7A5FFF-56D0-411E-B8A9-938D335E719B@googlemail.com> <6878CABA-4EA0-41C6-84EF-0BE494BCFC9F@apache.org> To: dev@couchdb.apache.org X-Mailer: Apple Mail (2.1078) X-Virus-Checked: Checked by ClamAV on apache.org On May 19, 2010, at 2:17 PM, Randall Leeds wrote: > On Wed, May 19, 2010 at 13:06, Filipe David Manana = wrote: >> Answers bellow >>=20 >> On Wed, May 19, 2010 at 8:35 PM, Adam Kocoloski = wrote: >>>>=20 >>>> 3) Is the checkpoint ID generation algorithm backwards-compatible? = Or >>> will users who upgrade restart all replications from scratch? >>>=20 >>=20 >> Well, the checkpoint IDs will be "_local/" + repDocId. So, they are >> basically user generated. Checkpoints will still remain in the source = and >> target DBs (I don't write them to the _replicator DB). >=20 > So if I create a _replicator doc with an ID corresponding to an > old-style replication ID it'll use the same checkpoints? >=20 > I can't remember, is it possible to change the doc_id with an _update > handler? I haven't looked at your code yet to see what paths it takes, > but if it's an erlang handler in the .ini I'm sure we could hack this. > Basically, I'm thinking to make _replicator a lot like the _replicate > from an API standpoint. Disable PUT but have POST to _replicator > create the doc with the rep id as we used to calculate it. >=20 > In fact, why name it _replicator at all??? We already have a POST to > _replicate that returns the id. This API looks a lot like the document > API, we just create a gen_server instead of a document. But if we're > careful couldn't we transparently turn the _replicate endpoint into > the _replicator DB under the hood and users don't even have to know > the difference (unless they need/want to)? >=20 > -Randall [retry after a delivery failure from gmail. maybe something is up with = Apache servers?] The main goals as I see them are: 1) replications continue even when the server restarts 2) it is easy to write replication manager couchapps I think having the standard database API for these documents (even if it = is admin only) will be a good way to allow people to use the existing = toolkit to query and create replications. Of course it'd be nice to be backwards compatible with the existing = replication API. Chris=