Return-Path: Delivered-To: apmail-jackrabbit-dev-archive@www.apache.org Received: (qmail 59430 invoked from network); 29 Nov 2006 09:28:54 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 29 Nov 2006 09:28:54 -0000 Received: (qmail 34046 invoked by uid 500); 29 Nov 2006 09:28:58 -0000 Delivered-To: apmail-jackrabbit-dev-archive@jackrabbit.apache.org Received: (qmail 34026 invoked by uid 500); 29 Nov 2006 09:28:58 -0000 Mailing-List: contact dev-help@jackrabbit.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@jackrabbit.apache.org Delivered-To: mailing list dev@jackrabbit.apache.org Received: (qmail 34015 invoked by uid 99); 29 Nov 2006 09:28:58 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 29 Nov 2006 01:28:58 -0800 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO brutus.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 29 Nov 2006 01:28:48 -0800 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 612A571430D for ; Wed, 29 Nov 2006 01:28:28 -0800 (PST) Message-ID: <3346588.1164792508395.JavaMail.jira@brutus> Date: Wed, 29 Nov 2006 01:28:28 -0800 (PST) From: "Jukka Zitting (JIRA)" To: dev@jackrabbit.apache.org Subject: [jira] Updated: (JCR-617) CachingHieraarchyManager may serve moved items In-Reply-To: <22092028.1162546216606.JavaMail.root@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org [ http://issues.apache.org/jira/browse/JCR-617?page=all ] Jukka Zitting updated JCR-617: ------------------------------ Affects Version/s: 1.1.1 > CachingHieraarchyManager may serve moved items > ---------------------------------------------- > > Key: JCR-617 > URL: http://issues.apache.org/jira/browse/JCR-617 > Project: Jackrabbit > Issue Type: Bug > Affects Versions: 1.1, 1.1.1 > Reporter: Tobias Bocanegra > Assigned To: Tobias Bocanegra > Fix For: 1.2 > > > There is a problem with weak referenced item states and event notification in the > LocalItemStateManager. > consider the following: > - Session A traverses some nodes and fills-up the cache of the ChachingHierarchyManager > - This also fills the weak-ref cache in Session A LocalItemStateManager. > - Session B does some operations > - At some point, GC decides to remove the weakly refferenced ItemStates in Session As > LocalItemStateManager > - Session B moves a node and saves the changes. > - The SharedItemStateManager notifies all listeners that a node was modified > - The LocalItemStateManager of Session A receives the event, but does not bubble it, > because it does not have the item anymore in its cache > - The CachingHierarchyManager of Session A never receives the modification event and still > servers the items at the old location. > Solution A: > reconnect missing states in the LocalItemStateManager when an event is received. this has > the drawback that a lot of state would be generated that are not needed. > Solution B: > add a new event 'nodeModified' that is only sent by the LocalItemStateManager if a > 'stateModified' was received for which it does not have the item aymore. this has the > drawback that alot more events are generated. > Will implement solution B -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira