Return-Path: Delivered-To: apmail-db-derby-dev-archive@www.apache.org Received: (qmail 5650 invoked from network); 13 Feb 2006 23:17:46 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 13 Feb 2006 23:17:46 -0000 Received: (qmail 44501 invoked by uid 500); 13 Feb 2006 23:17:45 -0000 Delivered-To: apmail-db-derby-dev-archive@db.apache.org Received: (qmail 44446 invoked by uid 500); 13 Feb 2006 23:17:44 -0000 Mailing-List: contact derby-dev-help@db.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: Delivered-To: mailing list derby-dev@db.apache.org Received: (qmail 44435 invoked by uid 99); 13 Feb 2006 23:17:44 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 13 Feb 2006 15:17:44 -0800 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received-SPF: neutral (asf.osuosl.org: local policy) Received: from [32.97.182.145] (HELO e5.ny.us.ibm.com) (32.97.182.145) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 13 Feb 2006 15:17:44 -0800 Received: from d01relay04.pok.ibm.com (d01relay04.pok.ibm.com [9.56.227.236]) by e5.ny.us.ibm.com (8.12.11/8.12.11) with ESMTP id k1DNHMjN005216 for ; Mon, 13 Feb 2006 18:17:22 -0500 Received: from d01av04.pok.ibm.com (d01av04.pok.ibm.com [9.56.224.64]) by d01relay04.pok.ibm.com (8.12.10/NCO/VERS6.8) with ESMTP id k1DNHMcg226400 for ; Mon, 13 Feb 2006 18:17:23 -0500 Received: from d01av04.pok.ibm.com (loopback [127.0.0.1]) by d01av04.pok.ibm.com (8.12.11/8.13.3) with ESMTP id k1DNHMJv005872 for ; Mon, 13 Feb 2006 18:17:22 -0500 Received: from [127.0.0.1] (DMCSDJDT41P.usca.ibm.com [9.72.133.58]) by d01av04.pok.ibm.com (8.12.11/8.12.11) with ESMTP id k1DNHMJw005849 for ; Mon, 13 Feb 2006 18:17:22 -0500 Message-ID: <43F11381.1040004@apache.org> Date: Mon, 13 Feb 2006 15:17:21 -0800 From: Daniel John Debrunner User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.3) Gecko/20040910 X-Accept-Language: en-us, en, de MIME-Version: 1.0 To: derby-dev@db.apache.org Subject: Re: [jira] Commented: (DERBY-938) ContextManager needs to be optimized References: <311124971.1139501158598.JavaMail.jira@ajax.apache.org> <43EB7FB5.1000107@sbcglobal.net> <43EBEDAE.6060604@apache.org> In-Reply-To: X-Enigmail-Version: 0.90.0.0 X-Enigmail-Supports: pgp-inline, pgp-mime Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Dyre.Tjeldvoll@Sun.COM wrote: >>>>>>"DJD" == Daniel John Debrunner writes: > > DJD> 2) Consider splitting patches that do N things to fix an > DJD> issue into N > DJD> independent patches if possible, or some number > 1. Some of > DJD> the changes in the patch are good by themselves, they don't > DJD> have to be linked with other changes that have modularity > DJD> concerns. E.g. replacing use of a synchronized collection > DJD> with an unsynchronized one. Incremental development is a > DJD> great model. > > I don't mind splitting the patch into smaller pieces if that makes it > easier to review it. Having said that, I don't really understand how > the patch can be split in such a way that each sub-patch becomes > meaningful by itself. All the ways of splitting the patch that I can > think of seems to leave each part with "baggage" that only makes sense > if viewed together with the other parts. But again, if it aids the > reviewers... I don't mean to get people to split patches for no reason, but into logical pieces. From a high level I can see that this patch has at least two independent changes: 1) Change the base collection for the context manager from a synchronized to an unsynchronized. 2) Optimize the context manager sor statement and execution contexts by pushing language specific concepts into the ContextManager. To my eyes: 1) seems like a good thing to do regardless of 2) and could be done before or after 2). Truly independent. 2) on the other hand is taking a module that is meant to be independent of the language layer and pushing language specific concepts into it. This one seems like it could do with more discussion, is the context manager really the correct place to solve this, maybe the system should be reworked so this functionality is in the language connection context? Dan.