Return-Path: X-Original-To: apmail-couchdb-user-archive@www.apache.org Delivered-To: apmail-couchdb-user-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 8C3EBC3F8 for ; Tue, 22 May 2012 16:44:06 +0000 (UTC) Received: (qmail 38016 invoked by uid 500); 22 May 2012 16:44:05 -0000 Delivered-To: apmail-couchdb-user-archive@couchdb.apache.org Received: (qmail 37984 invoked by uid 500); 22 May 2012 16:44:05 -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 37976 invoked by uid 99); 22 May 2012 16:44:05 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 22 May 2012 16:44:04 +0000 X-ASF-Spam-Status: No, hits=2.5 required=5.0 tests=HTML_MESSAGE,RCVD_IN_DNSWL_LOW,SPF_SOFTFAIL X-Spam-Check-By: apache.org Received-SPF: softfail (athena.apache.org: transitioning domain of gregor@martynus.net does not designate 209.85.214.52 as permitted sender) Received: from [209.85.214.52] (HELO mail-bk0-f52.google.com) (209.85.214.52) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 22 May 2012 16:43:58 +0000 Received: by bkcjc3 with SMTP id jc3so6827578bkc.11 for ; Tue, 22 May 2012 09:43:36 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=date:from:to:message-id:in-reply-to:references:subject:x-mailer :mime-version:content-type:x-gm-message-state; bh=2tTDQo+DnXA/vMuFZmbhWuT4szSY6MxdDEnSBan+smg=; b=DbZhiWKOUzOE0dNaDFI2ejf5G3CQW1AieUhqSqJiJln+8prmSBfygD2b295czjUozR p3yOefZkQ4KToI8qAb6xWhHKJdiH6aJbRrQbt8Jp22csFZjgtwdHX8uqX9K6J0H4dSnR HyWjvgwmt/q3huoNv0TZSH55DsknrxV5hidH63VGJDswhvhnVLtCR+5dBDZEgAwnWtRg 6LN4awwMOtHAUH+JTvJzkJ8HYJzSJhtbcJ3gZ7pDYDtcgHLsrItIhelDHcs1FDqQopnq 8/iy2HsGqF0WavMziN4MOQR0XNSNq2dCABtUKvvcAkVekWzc+BJJFloVeSYP+K1B4hSA Bd4g== Received: by 10.204.155.135 with SMTP id s7mr9703167bkw.121.1337705016468; Tue, 22 May 2012 09:43:36 -0700 (PDT) Received: from Gregor-Martynuss-MacBook-Pro.local (62-2-200-206.static.cablecom.ch. [62.2.200.206]) by mx.google.com with ESMTPS id ie3sm33288812bkc.1.2012.05.22.09.43.34 (version=SSLv3 cipher=OTHER); Tue, 22 May 2012 09:43:35 -0700 (PDT) Date: Tue, 22 May 2012 18:43:32 +0200 From: Gregor Martynus To: user@couchdb.apache.org Message-ID: In-Reply-To: References: <5CE5E627D3974CE18853BFCA6942C520@martynus.net> Subject: Re: per-user databases & collaboration problem X-Mailer: sparrow 1.5 (build 1043.1) MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="4fbbc234_4c4fff5b_14d" X-Gm-Message-State: ALoCoQk1AqIw/O9PK1uF334XPmjOxmd+fJYIaL32TLx09TQx5sadEkxO6ANiNO6m++q2HRdhtHqy X-Virus-Checked: Checked by ClamAV on apache.org --4fbbc234_4c4fff5b_14d Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Content-Disposition: inline Thanks CGS! I'll think deeper about the two options. Actually, I think there is one radical "solution" to the problem 1. Create a copy of Sarah's database, filtering out all deleted documents 2. Delete Sarah's database 3. Recreate Sarah's database using the copy from 2. I wonder how expensive such an operation would be? What do you think? Maybe it would be a feasible way, as it would be "only" a user database, with maybe a few thousand documents. -- Gregor Martynus On Tuesday, 22. May 2012 at 18:18, CGS wrote: > Hi Gregor, > > I admit I never had that problem, but I wouldn't allow Sarah to delete the > document from Joe. Instead, I would create a blacklist document in Sarah's > database in which she is allowed to add and delete Joe. If Joe is in the > blacklist, then Sarah's would still have Joe's document, but the document > would not be shown to Sarah. Once Sarah is changing her mind, she can > delete Joe from her blacklist and, consequently, she can resume sharing and > viewing Joe's docs. > > Another option would be the reversed replication in which Sarah can add a > certain field (e.g., key: Sarah, value: blacklisted) in Joe's document, so, > the revisions in both databases to be at the same value. > > I don't know if these options have any value for you, but this is what I > could think of to avoid the document conflict you mentioned. I hope it will > give you at least an idea how to go around the problem. > > CGS > > > > On Tue, May 22, 2012 at 5:19 PM, Gregor Martynus wrote: > > > Hey everyone, > > > > Imagine the following setup: 3 databases with 2 cont. replications: > > > > "user/joe" > > || > > || cont. replication (filtered) > > || > > \/ > > "shared/123" > > || > > || cont. replication > > || > > \/ > > "user/sarah" > > > > Joe (user/joe) is sharing a list of documents with an extra database > > (shared/123) and a filtered replication. Sarah > > (user/sarah) subscribed to the Joe's shared documents with another cont. > > replication. > > > > So far, so awesome. > > > > And now the Problem: > > > > 1. Sarah deletes Joe's documents and stops the replication. > > 2. Sarah changes her mind, she wants to have the documets back again > > 3. it doesn't work, because new revisions have been added for each deleted > > document, the shared documents do not get replicated because of the > > conflicts. > > > > And here I am, and don't see a "couch way" to solve this problem. Neither > > do I see a simple workaround. > > > > Is there anything you can think of, to solve or work around this problem? > > Or is this kind of "sharing" between user databases broken by design? > > > > -- > > Gregor > > > > > --4fbbc234_4c4fff5b_14d--