Red Hat Bugzilla – Bug 835457
Reindex operation causes java.lang.OutOfMemoryError with large tables
Last modified: 2012-07-18 21:16:16 EDT
Description of problem:
When reindexing a table with many rows, a java.lang.OutOfMemoryError occurs and the table is not indexed. Subsequent tables may still be indexed normally.
Version-Release number of selected component (if applicable):
Depends on size of data and available VM heap space. Approximately 100% of the time with 1,200,000 HTextFlowTargets with 512M of heap, but does not occur with same data when the VM is given 1024M of heap.
Steps to Reproduce:
1.Sign in as an admin user
2.Navigate to search administration page and begin a 'reindex' for one or more tables
3.Look at server log for about 2 minutes
Exception stack traces shown in log, caused by java.lang.OutOfMemoryError
UI shows halted progress bar and message about failed reindex
Reindex completes with no errors
Memory runs out during criteria query, before the indexing loop begins.
Fixed in 1.6.1-SNAPSHOT
It is still advised to run reindex when server load is minimal, as it will cause increased memory use (for example, in tests with ~1,200,000 HTextFlowTarget, memory usage increased by up to 200M over average usage)
VERIFIED with Zanata version 1.6.1-SNAPSHOT (20120702-0014)
Zanata version 1.7-SNAPSHOT (20120702-0025)
However, in some cases, I did encounter some "No space left on the device" (Out of disk space"). IMHO, it is not in the scope of this bug. But it should be good to provide some estimation of "recommend disk space for production server".
Should be also in future test plan.
*** Bug 828605 has been marked as a duplicate of this bug. ***