Alexander Klimetschek wrote:
On Wed, Aug 6, 2008 at 1:58 PM, Matthijs Wensveen <[EMAIL PROTECTED]> wrote:
Hi,

Our application imports content in one workspace and when it's done and
everything is verified the content is cloned to the default workspace. At
the top of the freshly imported content is one node with a rather large
subtree (10.000+ nodes). More than occasionally the clone operation fails
because the jvm runs out of heap space. Are there any alternatives to clone
that do not put the entire tree in memory before writing it to the other
workspace?

Well, you could clone only sub-parts (if that is possible) or simply
copy node-by-node and save every X nodes, so the memory footprint is
not that big.

Regards,
Alex

Hi Alex,

Cloning only sub-parts is not an option. The tree that is currently cloned is already a sub-part of the entire content tree. Copying might be an option. Is it possible to set the UUID of a copied node? I need to be able to update the copied subtree when there are updates in the 'prepare' workspace. There is no node.setUUID() method, but maybe I can set the 'jcr:uuid' property?

To give a little more insight: The first time a piece of content (called a 'domain') is imported, it is put in the 'prepare' workspace. When this is done and its consistency is verified, the domain is cloned to the default workspace. After that updates on the domain are done on the prepare workspace, then the default workspace's domain node is updated, after verification of the prepare workspace's domain node. At least, that's how we designed the process. Unfortunately the clone operation fails when the domain subtree is too large.

Thanks,
Matthijs

--
Matthijs Wensveen
Func. Internet Integration
W http://www.func.nl
T +31 20 4230000
F +31 20 4223500

Reply via email to