From dev-return-31352-apmail-directory-dev-archive=directory.apache.org@directory.apache.org Tue Sep 22 10:06:15 2009 Return-Path: Delivered-To: apmail-directory-dev-archive@www.apache.org Received: (qmail 99431 invoked from network); 22 Sep 2009 10:06:15 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 22 Sep 2009 10:06:15 -0000 Received: (qmail 14321 invoked by uid 500); 22 Sep 2009 10:06:15 -0000 Delivered-To: apmail-directory-dev-archive@directory.apache.org Received: (qmail 14235 invoked by uid 500); 22 Sep 2009 10:06:14 -0000 Mailing-List: contact dev-help@directory.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: "Apache Directory Developers List" Delivered-To: mailing list dev@directory.apache.org Received: (qmail 14227 invoked by uid 99); 22 Sep 2009 10:06:14 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 22 Sep 2009 10:06:14 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of elecharny@gmail.com designates 209.85.210.181 as permitted sender) Received: from [209.85.210.181] (HELO mail-yx0-f181.google.com) (209.85.210.181) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 22 Sep 2009 10:06:05 +0000 Received: by yxe11 with SMTP id 11so2180434yxe.15 for ; Tue, 22 Sep 2009 03:05:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:sender:message-id:date:from :user-agent:mime-version:to:subject:content-type :content-transfer-encoding; bh=/FREEZgs9HqIROoLe4B5Igl6M44b/ciD2SLL/J5xYeI=; b=CQ+l/sCy5efW7uh2E67bCpN7FPFk/QrsJ0FD/r2p2WWKl5eXEVUaCUwhgtB7vHRLFC q49T18Ox1knIj6GzYou4yW5uEE+1djbQ/bDf/BkC8BKsOZVZNed11pnCwZU7d6BOAVdg sV4fcUQ36m2dOYQQ3uUTip/EuUl1Ijj0Nw3Ak= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=sender:message-id:date:from:user-agent:mime-version:to:subject :content-type:content-transfer-encoding; b=kDD8yY8tk/spAbuNOKmOWd8rOZHb2QMQHFSSq7QG9OOhNvCiNfu1LT8ahYRU8QO8bN 2NCV4/wBXPgD+tFrxPrZBJ+q1zxFUIEVMOr0Wr+INBFpiVITTPE6JiLL/FpsNNa7h5rE 1RQE0QozIRqwUzE+b0G7DK/i7jYzfaeRAgvp8= Received: by 10.90.45.19 with SMTP id s19mr492492ags.100.1253613944063; Tue, 22 Sep 2009 03:05:44 -0700 (PDT) Received: from ?10.58.110.164? (72-254-61-71.client.stsn.net [72.254.61.71]) by mx.google.com with ESMTPS id 2sm1306206agd.27.2009.09.22.03.05.41 (version=TLSv1/SSLv3 cipher=RC4-MD5); Tue, 22 Sep 2009 03:05:42 -0700 (PDT) Sender: Emmanuel Lecharny Message-ID: <4AB8A174.2040406@nextury.com> Date: Tue, 22 Sep 2009 12:05:40 +0200 From: Emmanuel Lecharny User-Agent: Thunderbird 2.0.0.23 (X11/20090817) MIME-Version: 1.0 To: Apache Directory Developers List Subject: About ClonedServerEntty Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 8bit X-Virus-Checked: Checked by ClamAV on apache.org Hi, we are using this data structure to feed it with the existing entry when a request enters the chain. It's really useful for many operations like modification, as it avoids many lookup all along the chains. The problem I have with this structure is that the content does not reflect the reality. We store two elements : - the original entry (the one which is in the server when the operation enters the chain) - and what we call the ClonedEntry This second element is most certainly useless while going down the chain, as if it's cloned, it's cloned only once. Then any modification done on this data will impact the rest of the chain. My personal guess is that we should clone the original entry anytime we want to do temporarily modifications, like what we do in the schema interceptor. We also need to store the resulting modification once it has been applied on the server : for a rename operation, we must update some AT on the backend (ModifiersName, ModifyTimeStamp), and we must do that on the modified entry. That means at some point we store this modified entry into this structure. I would suggest we rename the clonedEntry to modifiedEntry, and that this element is fed in the backend, and used when returning. thoughts ? -- -- cordialement, regards, Emmanuel Lécharny www.iktek.com directory.apache.org