Hi, I was trying to get a copy of a workspace into another repository with different persistence manager. I expected to be straightforward, but it proved extensively troubling.
First I exported system view of jcr:root, but it wouldn't import because of jcr:system node. Then, I exported only subtree of my data, this time it began importing but both session.importXML & workspace.importXML throw out of memory exception - with 500 MB of exported xml and 1024 MB heap. Finally I wrote an script to export the data in small chunks, and could get them imported, but this time multi-valued properties with only one value in them were imported as single-value, and when my application tried to read them as multi-value it throw an exception, so I had to write another script to change them to mult-value. As I look into system-view xml file, there's no mention of properties being multi-valued, so when there's only on value importer isn't able to detect the difference with single-value ones. So my question is, is these the expected behavior of export & import? And is there a better way of getting a copy of repository? Is it possible to use journal like what cluster nodes do but into another repository? (This can't be done manually as then the UUIDs and references would be lost) Omid,
