Subject: RE: Using Saxon 8.5 and collection() to process a directory of XML files
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Fri, 5 Aug 2005 18:18:01 +0100
|
> This seems to work fine, memory usage hovers around the same
> amount. If a
> call to a key is added:
>
> <xsl:for-each select="collection(concat($xmlDir, '?select=*.xml'))">
> <xsl:value-of select="key('somekey','someval')"/>
> <xsl:if test="saxon:discard-document(.)">Discarded.</xsl:if>
> </xsl:for-each>
>
> Memory usage grows until an OutOfMemoryError is thrown.
>
> Is there a workaround for this?
Thanks for the information. In theory the only reference to the index is via
a WeakHashMap so when the document gets garbage collected, the index should
go too. Looks from this evidence as if there might be another reference
somewhere: will have to investigate with HAT some time (won't be instantly).
Michael Kay
http://www.saxonica.com/
|