On Thu, Jan 8, 2009 at 7:08 PM, Vijay Pandey <[email protected]> wrote:
> a) Root Node
>        OurContentMainNode
>                Node 1
>                        This node has got around 80000 flat(non-hierchical) 
> child nodes

[...]

>                Sun.rmi.transport.WeakRef --- has the size of around 19 MB
> with the following structure.
>
> Sun.rmi.transport.WeakRef
>        Org.apache.jackrabbit.rmi.server.ServerNode
>                Org.apache.jackrabbit.core.NodeImpl
>                        Org.apache.jackrabbit.core.NodeData
>                                Org.apache.jackrabbit.core.state.NodeState
>
> Org.apache.jackrabbit.core.state.ChildNodeEntries ----- this one occupied 19 
> MB

As Todd already mentioned, this one occupies 19 MB because it contain
the references to all those 80000 child nodes you have. This is a
basic design decision inside Jackrabbit that takes a lot of effort to
change and optimizes the performance for small number of child nodes.
You can solve this by introducing some extra-levels to you content
model.

The benefit is also that the repository becomes more easily explorable
for humans. Typical solutions are to use some categories of the
context of your data or date folders, such as "2009/01/09".

Regards,
Alex

-- 
Alexander Klimetschek
[email protected]

Reply via email to