Hi all,
I have to fetch data from a table which has about 10,00,00,000 rows.when I am running my program it is giving me
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
What can I do to avoid that?
Below my code is given-
VERTEX_TRF.ERROR_CODE_MAPPING(ERROR RULE) TABLE CONTAINS FEW RECORDS(ABOUT 50) WHILE
VERTEX_TRF.RISK_STATUS_DATA (ERROR MESSAGE)TABLE HAS ABOUT 10,00,00,000 RECORDS,that means for one error rule resultset has to parse through 10,00,00,000 recods,seems like it has huge memory requirements......
Below given is exception trace-
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at java.util.Vector.<init>(Vector.java:111)
at java.util.Vector.<init>(Vector.java:124)
at oracle.jdbc.driver.OracleResultSetCacheImpl.put(OracleResultSetCacheImpl.java:62)
at oracle.jdbc.driver.ScrollableResultSet.putCachedValueAt(ScrollableResultSet.java:2392)
at oracle.jdbc.driver.ScrollableResultSet.cacheCurrentRow(ScrollableResultSet.java:2073)
at oracle.jdbc.driver.ScrollableResultSet.cacheRowAt(ScrollableResultSet.java:2090)
at oracle.jdbc.driver.ScrollableResultSet.isValidRow(ScrollableResultSet.java:2038)
at oracle.jdbc.driver.ScrollableResultSet.get_refetch_size(ScrollableResultSet.java:2192)
at oracle.jdbc.driver.ScrollableResultSet.refreshRowsInCache(ScrollableResultSet.java:256)
at oracle.jdbc.driver.SensitiveScrollableResultSet.refreshRow(SensitiveScrollableResultSet.java:187)
at oracle.jdbc.driver.SensitiveScrollableResultSet.handle_refetch(SensitiveScrollableResultSet.java:275)
at oracle.jdbc.driver.SensitiveScrollableResultSet.next(SensitiveScrollableResultSet.java:68)
at oracle.jdbc.driver.UpdatableResultSet.next(UpdatableResultSet.java:330)
at com.ankit.DB.DatabaseFetcher.main(DatabaseFetcher.java:48)
I am not getting any way to resolve this problem.How can I optimize the things.....
>