Details
-
Bug
-
Status: Closed
-
Resolution: Fixed
-
6.2.0 CE B1
Description
I have an installation with 7 companies and one of them has 1,3 millions of users.
When I tried to do an users reindex the system goes OutOf Memory.
My JVM is configured with "-Xmx1024m". I know it is few memory but IMHO the reindex process will have to load a bunch of records, update the SearchEngine, and discard it.
During my analisys I notice that UserIndexer use an ActionableDynamicQuery to fill up an array of DocumentImpl. After that all the records of the selected company are processed the array is submitted to IndexerWriter.
I've used an ext (indexer-ext-6.2.0.1.war) to help me:
- speedup the processing of companies with few users (look UserActionableDynamicQueryExt)
- increase logging
The files "catalina-02.out", "heap-histo-02.log" and JVisualVM snapshot "application-1376574827825.apps" shows how heap usage increases constantly for the company with millions of users.
In 6.1 strategy was to invoke the IndexWriter for every bunch of records.
I've extended my ext to call IndexWriter every 5000 DocumentImpl.
The files "catalina-03.out" and "heap-histo-03.log" show how heap usage is lower.
Attachments
Issue Links
- causes
-
LPS-46374 Not setting a searchEngineId for the BaseActionableDynamicQuery can lead to null pointer
- Closed
- relates
-
LPE-12070 May run out of memory when re-indexing millions of records
-
- Closed
-
-
LPE-12071 OutOfMemory risk with millions of records
-
- Closed
-
-
LPE-12072 OutOfMemory risk when there are millions of records
-
- Closed
-
-
LPE-12073 OutOfMemory risk when indexing millions of records
-
- Closed
-
-
LPE-12074 Out of Memory risk with Indexers with millions of records - web-content component
-
- Closed
-
-
LPE-12075 OutOfMemory risk in *Indexer with millions of records in Portal Admin
-
- Closed
-