Return-Path: Delivered-To: apmail-jackrabbit-dev-archive@www.apache.org Received: (qmail 40824 invoked from network); 31 Jul 2009 12:10:39 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 31 Jul 2009 12:10:39 -0000 Received: (qmail 66651 invoked by uid 500); 31 Jul 2009 12:10:39 -0000 Delivered-To: apmail-jackrabbit-dev-archive@jackrabbit.apache.org Received: (qmail 66575 invoked by uid 500); 31 Jul 2009 12:10:39 -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 66567 invoked by uid 99); 31 Jul 2009 12:10:39 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 31 Jul 2009 12:10:39 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.140] (HELO brutus.apache.org) (140.211.11.140) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 31 Jul 2009 12:10:36 +0000 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id D416F234C046 for ; Fri, 31 Jul 2009 05:10:14 -0700 (PDT) Message-ID: <434005943.1249042214854.JavaMail.jira@brutus> Date: Fri, 31 Jul 2009 05:10:14 -0700 (PDT) From: "Stefan Guggisberg (JIRA)" To: dev@jackrabbit.apache.org Subject: [jira] Commented: (JCR-642) Support flat content hierarchies In-Reply-To: <16816858.1164096481964.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/JCR-642?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12737505#action_12737505 ] Stefan Guggisberg commented on JCR-642: --------------------------------------- @lars: i am rather sceptic that your proposal can be implemented with the current core architecture and without sacrificing existing functionality and without seriously impacting performance. please keep in mind that child node entries e.g. need to support same-name sibling semantics. however, feel free to provide a patch and proof me wrong! i'd be happy to admit having been too pessimistic :) > Support flat content hierarchies > -------------------------------- > > Key: JCR-642 > URL: https://issues.apache.org/jira/browse/JCR-642 > Project: Jackrabbit Content Repository > Issue Type: Improvement > Components: jackrabbit-core > Reporter: Jukka Zitting > > The current best practice with Jackrabbit is to avoid flat content structures due to performance concerns. > These concerns are caused by the fact that the NodeState implementation requires the list of child node names and identifiers to be available at all times. In fact many (all?) current persistence managers implement this requirement by storing and loading this list as a part of the serialized node state. When this list grows, the performance and memory overhead of managing the list grows as well. As a side note, this also creates potential consistency issues since the parent/child links are stored both within the child list of the parent node and as the parent link of the child node. > To solve this issue, I believe we need to break the tight bonding between the node state and the list of child nodes. This will likely require major refactoring of the Jackrabbit core, including breaking the NodeState and PersistenceManager interfaces, so I don't expect a solution in near future. However, we should start thinking about how to best do this, and at least be concerned about building in any more assumptions about the list of child nodes always being readily available. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.