Return-Path: Delivered-To: apmail-couchdb-user-archive@www.apache.org Received: (qmail 18551 invoked from network); 7 Aug 2010 16:52:44 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 7 Aug 2010 16:52:44 -0000 Received: (qmail 63478 invoked by uid 500); 7 Aug 2010 16:52:43 -0000 Delivered-To: apmail-couchdb-user-archive@couchdb.apache.org Received: (qmail 63412 invoked by uid 500); 7 Aug 2010 16:52:42 -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 63404 invoked by uid 99); 7 Aug 2010 16:52:42 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 07 Aug 2010 16:52:42 +0000 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests=FREEMAIL_FROM,NORMAL_HTTP_TO_IP,RCVD_IN_DNSWL_NONE,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL,WEIRD_PORT X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of sebastiancohnen@googlemail.com designates 74.125.82.180 as permitted sender) Received: from [74.125.82.180] (HELO mail-wy0-f180.google.com) (74.125.82.180) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 07 Aug 2010 16:52:34 +0000 Received: by wya21 with SMTP id 21so11364603wya.11 for ; Sat, 07 Aug 2010 09:52:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:received:received:content-type:mime-version :subject:from:in-reply-to:date:content-transfer-encoding:message-id :references:to:x-mailer; bh=nuCpT30/bmPZ2zCClDdMpyda5/9qJraFntCCoiDUG+Q=; b=QfjPkHp/IsLxYyZLjHyrO0rJg+x7wHOeOueJt3tXSBbY08S9xV0o2vGfXhv3XSG761 Hf7Sktn2PXCzW2ij0eAXH39b6+CyDLmlC+7VGPE4q6N52mWfviMyxVvk7xLbWL6ux/3f ujNj2QJB8brEiOHFjh+5QPRO2KYMzGnOFJrR0= DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=content-type:mime-version:subject:from:in-reply-to:date :content-transfer-encoding:message-id:references:to:x-mailer; b=R10A+xfm8+sbM3ZNfYY9UeHMg8HnVcO++HH2NASoaVNI3Xk8L8j8XSKQUsdNfMfxwi sfDMjeHHudEN9BY7gOiegEnGyE4Ikf6xqPlwseYRYom2yNu3w0pxotvIY7IxOE6ryTzU U6p5cR6xLAbb4qX96mFQeisCUeMWmLaIeh6Kg= Received: by 10.227.20.77 with SMTP id e13mr11599236wbb.12.1281199934429; Sat, 07 Aug 2010 09:52:14 -0700 (PDT) Received: from shakti.fritz.box (koln-5d814e68.pool.mediaWays.net [93.129.78.104]) by mx.google.com with ESMTPS id h3sm2476092wbb.9.2010.08.07.09.52.12 (version=TLSv1/SSLv3 cipher=RC4-MD5); Sat, 07 Aug 2010 09:52:13 -0700 (PDT) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Apple Message framework v1081) Subject: Re: expected behaviour of changes feed From: Sebastian Cohnen In-Reply-To: <4C5D7408.6060304@aol.com> Date: Sat, 7 Aug 2010 18:52:10 +0200 Content-Transfer-Encoding: quoted-printable Message-Id: <1BEF5DD1-EBA2-49F3-8B9A-67ECE5B7E7C5@googlemail.com> References: <4C5D7408.6060304@aol.com> To: user@couchdb.apache.org X-Mailer: Apple Mail (2.1081) X-Virus-Checked: Checked by ClamAV on apache.org hey cliff, you need to be aware, that "revisions" are not meant to be used for = document versioning. _rev should be called _mvcc_token (or something = like that) as couchdb only uses this information for concurrency control = (conflict detection and resolution). you should *never* rely on old, = non-conflicting versions to be around, as couch does not make any = guarantees about their availability. for that reason, I believe that this approach is not working if you seek = to do a full audit of every change to a database. e.g. when you need to = compact your database, you might "loose revision" information. best Sebastian On 07.08.2010, at 16:56, Cliff Williams wrote: > All, >=20 > Good afternoon. >=20 > using this url = http://10.0.0.10:5984/test/_changes?since=3D14966&all_docs=3Dtrue >=20 > I get the following results >=20 > {"results":[ > = {"seq":14971,"id":"ab53d85b92247bcbf251ef9abed4d998","changes":[{"rev":"2-= b9cfa00cc907767d6bfdeca7dee5008f"}]}, > = {"seq":14973,"id":"ab53d85b92247bcbf251ef9abed4d512","changes":[{"rev":"3-= ec350b40276b7c16c09ef485dd8f14aa"}]}, > = {"seq":14981,"id":"ab53d85b92247bcbf251ef9abed4a63a","changes":[{"rev":"2-= fe0cb06e7046e9d41d326b3e8c30ed0c"}]}, > = {"seq":14982,"id":"_design/test","changes":[{"rev":"8-5a565b32bca9b4247954= 3441f23a2e61"}]}, > = {"seq":14983,"id":"ab53d85b92247bcbf251ef9abed4b4d8","changes":[{"rev":"2-= ed899403c21b6cca22f7e68f05d92b0c"}]}, > = {"seq":14984,"id":"ab53d85b92247bcbf251ef9abed47f2f","changes":[{"rev":"2-= 30d5cf6764f2e6c1795d65f272817238"}]}, > = {"seq":15006,"id":"ab53d85b92247bcbf251ef9abed4e544","changes":[{"rev":"10= -e6856aac928ff1e2e019b556de8f1760"}]}, > = {"seq":15007,"id":"ab53d85b92247bcbf251ef9abed49e50","changes":[{"rev":"19= -d7629eac5a5bd2133a19178fdc9277e6"}]} > ], > "last_seq":15007} >=20 > now if I make an amendment to the document at sequence number 15006 = and using the same URL I get the following results. >=20 > {"results":[ > = {"seq":14971,"id":"ab53d85b92247bcbf251ef9abed4d998","changes":[{"rev":"2-= b9cfa00cc907767d6bfdeca7dee5008f"}]}, > = {"seq":14973,"id":"ab53d85b92247bcbf251ef9abed4d512","changes":[{"rev":"3-= ec350b40276b7c16c09ef485dd8f14aa"}]}, > = {"seq":14981,"id":"ab53d85b92247bcbf251ef9abed4a63a","changes":[{"rev":"2-= fe0cb06e7046e9d41d326b3e8c30ed0c"}]}, > = {"seq":14982,"id":"_design/test","changes":[{"rev":"8-5a565b32bca9b4247954= 3441f23a2e61"}]}, > = {"seq":14983,"id":"ab53d85b92247bcbf251ef9abed4b4d8","changes":[{"rev":"2-= ed899403c21b6cca22f7e68f05d92b0c"}]}, > = {"seq":14984,"id":"ab53d85b92247bcbf251ef9abed47f2f","changes":[{"rev":"2-= 30d5cf6764f2e6c1795d65f272817238"}]}, > = {"seq":15007,"id":"ab53d85b92247bcbf251ef9abed49e50","changes":[{"rev":"19= -d7629eac5a5bd2133a19178fdc9277e6"}]}, > = {"seq":15008,"id":"ab53d85b92247bcbf251ef9abed4e544","changes":[{"rev":"11= -e01ef09eef56397e345f598fd2069f22"}]} > ], > "last_seq":15008} >=20 >=20 > I think that it is fairly straight forward to ascertain that we are = looking at latest revision sequences. >=20 > Is there a way to see all sequence numbers?? I am of course aware of = the continuous feed but do not wish to use it. > My use case is for a pharma regulated clinical trials database where i = need a total audit of every single change made to the database. >=20 > best regards >=20 > Cliff