Hi Natalia,

I had the issue on 2 Vistas and 1 XP, all running Java 1.6.0_16

Output on on Vista:

C:\Users\feri>java -version
java version "1.6.0_16"
Java(TM) SE Runtime Environment (build 1.6.0_16-b01)
Java HotSpot(TM) Client VM (build 14.2-b01, mixed mode, sharing)


let me know how can I help more
Ferenc


On Fri, Oct 23, 2009 at 13:50, Natalia Shilenkova <nshilenk...@gmail.com>wrote:

> Ferenc,
>
> Thank you for reporting the problem. Could you please let me know what
> OS and JVM version you use to run Xindice (please include all the
> information "java -version" reports)?
>
> I'll investigate the problem.
>
> Regards,
> Natalia
>
> 2009/10/21 Ferenc Pápai <fpa...@gmail.com>:
> >
> >
> > Hi
> >
> > I think I discovered a memory leak while an XPath query is executed using
> > Xindice 1.2 dev svn revision number 821662.
> >
> > I only had to run a query that generated a sufficiently large number of
> > results.
> >
> > After some debugging I discovered that in class
> XPathQueryResolver.ResultSet
> > the XPathResolverContext member variable is cached now as opposed to as
> it
> > was in its previous version.
> > This is probably for performance reasons.
> >
> > This class XPathResolverContext has internally a DTMManager
> implementation.
> > As ResultSet.prepareNextNode method is called many times (while one query
> is
> > executed),  the DTMManager instance will grow and grow in size until JVM
> > runs out of memory.
> >
> > Calling XPathResolverContext .reset() in ResultSet.prepareNextNode would
> > solve this problem but it would be against the intent of optimizing the
> > code.
> >
> >
> > I am not familiar yet with Xalan's DTM API to provide a proper solution.
> So
> > i am just speculating here:
> > Internally DTMManager caches DTM objects generated while it executed the
> > query on a given context. These DTMs consume the memory.
> > I think these are cached to be reused by the two-way iterators provided
> by
> > DTMManager.
> > However in Xindice, the Collection API provides the NodeSet as forward
> only
> > iterator, thus no DTM caching is need for Xindice. ?
> >
> >
> > regards,
> > Ferenc
> >
> >
> >
> >
> >
> >
> >
> >
> >
>

Reply via email to