Return-Path: Delivered-To: apmail-jackrabbit-dev-archive@www.apache.org Received: (qmail 85361 invoked from network); 28 Feb 2008 11:08:52 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 28 Feb 2008 11:08:52 -0000 Received: (qmail 21158 invoked by uid 500); 28 Feb 2008 11:08:45 -0000 Delivered-To: apmail-jackrabbit-dev-archive@jackrabbit.apache.org Received: (qmail 21105 invoked by uid 500); 28 Feb 2008 11:08:44 -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 21083 invoked by uid 99); 28 Feb 2008 11:08:44 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 28 Feb 2008 03:08:44 -0800 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; Thu, 28 Feb 2008 11:08:05 +0000 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 3CD4E234C03F for ; Thu, 28 Feb 2008 03:07:51 -0800 (PST) Message-ID: <352572736.1204196871248.JavaMail.jira@brutus> Date: Thu, 28 Feb 2008 03:07:51 -0800 (PST) From: "Stefan Guggisberg (JIRA)" To: dev@jackrabbit.apache.org Subject: [jira] Commented: (JCR-954) Allow to disable referential integrity checking for workspace In-Reply-To: <31606533.1180557496098.JavaMail.jira@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 [ https://issues.apache.org/jira/browse/JCR-954?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12573225#action_12573225 ] Stefan Guggisberg commented on JCR-954: --------------------------------------- i'd prefer to not publicly expose this method. doing so would IMO mean compromising a core feature of JSR-170. > Allow to disable referential integrity checking for workspace > ------------------------------------------------------------- > > Key: JCR-954 > URL: https://issues.apache.org/jira/browse/JCR-954 > Project: Jackrabbit > Issue Type: New Feature > Components: jackrabbit-core > Reporter: Przemo Pakulski > Priority: Minor > Fix For: 1.3.4, 1.5 > > Attachments: JCR-954-patch.txt, JCR-954-simple.diff > > > Some operations like clone, remove operating on huge subtree of nodes requires a lot of memory. To copy, clone, remove subtree all nodes are loaded into transient spaces. It allows such operations to be transactional, from other side it requires a lot of heap size and this memory size is directly dependent on the size of subtree (number of nodes). In result of this in some cases it is impossible to make such operations in one step. In our environment sometimes 1 GB of java heap is not enough to succesfully clone subtree from one workspace to another. > You can always clone (copy, remove) tree in chunks, but if you have references between subtrees such approach fails. Possibilty of temporary disabling referential integrity checking for experienced JCR user could be very usefull then. > Another use case is to allow to clone selected subtrees of the whole structure between worskpaces. In our application we need to clone only some selected subtrees from one workspace to another. But we can not do that because of existing references. We need to clone the whol estructure first, then remove all unwanted nodes, which is really time expensive and memory consuming. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.