Le 29/09/2009 13:51, Muguet Bradbury a écrit :
> Sebastien,
>
> Thanks for the reply.  Yes, we do store large documents (rtf and large xml 
> documents).  When we store each document, we create a session, add the 
> document, save the session, and close the session.  The LuceneTermBuffers 
> remain.  However, if the indexing occurs asynchronously, this may be what's 
> filling up the memory.  Eventually, the application gets an out of memory 
> exception.
This is clearly caused by the asynchronous indexing of binary properties.
You can also deactivate index of this kind of documents [1].

Can you provide more informations on these documents (size, number, ...) ?

> I will look into removing the SearchIndex elements from the repository.xml 
> and workspace.xml.  Do we also need to remove the index directories from the 
> wsp.home path?  Will removing the SearchIndex elements make retrieval of the 
> documents (with the node keys) slower?
>   
Removing the index directory is not mandatory as it will not be used
anymore. But, this consumes disk space so you can remove them.

Lucene indexes are only used for search features (XPath, SQL, AQM).
Node#getNodes(),  Node#getProperties(), Session#getNodeByUUID(),
... uses an asbtraction called PersistenceManager [2].
Default implementations of PersistenceManager do not use an index.

[1] http://jackrabbit.apache.org/jackrabbit-text-extractors.html
[2] http://wiki.apache.org/jackrabbit/PersistenceManagerFAQ

--
Sébastien Launay

Reply via email to