Return-Path: X-Original-To: apmail-incubator-bloodhound-dev-archive@minotaur.apache.org Delivered-To: apmail-incubator-bloodhound-dev-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id C9FFFDEDD for ; Mon, 29 Oct 2012 10:18:27 +0000 (UTC) Received: (qmail 5216 invoked by uid 500); 29 Oct 2012 10:18:27 -0000 Delivered-To: apmail-incubator-bloodhound-dev-archive@incubator.apache.org Received: (qmail 5045 invoked by uid 500); 29 Oct 2012 10:18:22 -0000 Mailing-List: contact bloodhound-dev-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: bloodhound-dev@incubator.apache.org Delivered-To: mailing list bloodhound-dev@incubator.apache.org Received: (qmail 5001 invoked by uid 99); 29 Oct 2012 10:18:21 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 29 Oct 2012 10:18:21 +0000 X-ASF-Spam-Status: No, hits=-0.7 required=5.0 tests=RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of gary.martin@wandisco.com designates 209.85.214.47 as permitted sender) Received: from [209.85.214.47] (HELO mail-bk0-f47.google.com) (209.85.214.47) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 29 Oct 2012 10:18:14 +0000 Received: by mail-bk0-f47.google.com with SMTP id jk7so1582843bkc.6 for ; Mon, 29 Oct 2012 03:17:52 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:subject:references :in-reply-to:content-type:content-transfer-encoding :x-gm-message-state; bh=u8wXn8yrvfS1GsmJ0v3TmUlnTqO4kFqgd0RA0yHvxiM=; b=l7wJlUuicHz63vKPhXreORI524MYjokNOkywmjjLXTs2UTnJhyDySmfuFaBavSr0gw aYU+uQxPeL03mO45BECHWy24WWhavHvOSCSpcdYgCowWY6yfDwQFhfUDa6dKwspxGf6q eaBL7v7WnWx2ercQ2XHodQMlPDfjXqwiJHGUmh/xBQjQQBZkidgL/j8JnR93WbBAgK+y caDbnjO3eU8cFsO1ETYN1oCx53R0ocXYN5SKVFRDHcgPLMXNzwnl/AqKbkrhpyTEUsFv EBQ5KAFq0jYl6MK7jumD1e5rQ6w7d7lXq/xfYcbsrt+xpDx7w9rkO1yEt4PRYTBfuSeS 9JVA== Received: by 10.204.145.218 with SMTP id e26mr1403785bkv.95.1351505872559; Mon, 29 Oct 2012 03:17:52 -0700 (PDT) Received: from [10.2.5.205] ([77.86.30.139]) by mx.google.com with ESMTPS id s20sm3479215bkw.15.2012.10.29.03.17.50 (version=SSLv3 cipher=OTHER); Mon, 29 Oct 2012 03:17:51 -0700 (PDT) Message-ID: <508E57C9.5000809@wandisco.com> Date: Mon, 29 Oct 2012 10:17:45 +0000 From: Gary Martin User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:16.0) Gecko/20121011 Thunderbird/16.0.1 MIME-Version: 1.0 To: bloodhound-dev@incubator.apache.org Subject: Re: Datamodel and data consistency References: <508A4CAB.3070106@digiverse.si> In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Gm-Message-State: ALoCoQmA/yZfSh6IlYxW1JBkU3ITynIO1ymt5CyqmEL63057ofgWWMYS3rukApEQmVoFNcUkr1TC X-Virus-Checked: Checked by ClamAV on apache.org On 29/10/12 07:57, Peter Koželj wrote: > On Sat, Oct 27, 2012 at 11:11 AM, Joe Dreimann < > joachim.dreimann@wandisco.com> wrote: > >> On 27 Oct 2012, at 04:29, Peter Koželj wrote: >>> [...] as a user I surely don't >>> need separate email for each affected ticket, just the one saying that >>> product or milestone or whatever has changed would be enough. >>> >>> Peter >> Fully agree. >> >> - Joe > > Ok, if I try to recap all this and try to think about what it all means: > > We agree that data model as is needs fixing (it is not enterprise or > distributed environments friendly). Some of the fixes are local (like > multiproduct plugin) for other it seems that we should just do them through > BH and offer the solution to Trac. But what are the implications? > > 1. We would deviate from standard Trac quite a bit with a risk that our > changes are accepted with a big delays or even rejected. Merging in new > Trac versions could become a nightmare. Would we be willing to stay on Trac > 1.0 for ever? And we would have to go from "...on the shoulders of Trac..." > to "... not compatible with Trac...". > > 2. With the lack of data abstraction or data access constraints on a plugin > level, plugins depend on this same database model. We will lose > compatibility with most of the plugins that relay on the Trac database > schema. And if we would insist on using some of the existing plugins for BH > functionality we would be forced to fork them (see next point). > > 3. Adding data consistency on database level will break current plugin > model. Data imports and schema upgrades become nontrivial and would require > special inter plugin protocol to synchronise all that. Asking plugin > authors to support two different data models and two different plugin > models seems a bit much and would probably mean two different plugins (trac > and BH) for the same functionality. So do we want entreprise DBA support or > plugin authors support? > > Peter > I don't want to be moving away from Trac as I still think that both communities will be able to benefit from each other. We can probably expect the schema and APIs for Trac to evolve over time and so Trac presumably has to manage the same risk of breaking compatibility and pulling the trac-hack community with them. It would certainly be difficult for plugin authors to support multiple plugin models. It is not unusual at this point to see plugins supporting older versions of Trac so for those it might be a question of how much can it hurt to support one more but, with no firm guarantees of our system being fixed, the effort to potentially support multiple versions of Bloodhound as well would probably put that in doubt too. To make that work we would probably need to make sure that changes are generally transparent and always easy to convert as well as supplying a lot of support for the process. Going back to the problem with multiproduct, I'm happy to see us swapping to using the immutable product prefix. I am not yet convinced of the argument of providing an extra field for the convenience of allowing us to easily make the prefix mutable. Withholding the ability to change the prefix will be simplifying for the users of the system so that they do not have to get used to referring to tickets through a new prefix on the whim of another user. While we could provide the ability for the old prefix to continue to be usable for identifying the appropriate resource under the new prefix, the potential confusion in discussions of tickets just seems unwarranted. The workaround exists of creating a new product and moving the tickets into it. As for the question of notifications, I agree that we don't want multiple emails associated with a a change of product but I think it would be nice for resources that were associated at the time of the change to be able to report that the event has happened. On the other hand, the activity feed should really only show one event at any given scope. I am not convinced that that the bulk modify apparatus is the correct approach for this in the long term. Cheers, Gary