1 We have just migrated our application to Springboot 3.x, Spring Data JPA 3.1.x & Hibernate 6.1.7 Final. Immediately we observed heap memory spike as we deployed same code without any significant changes. Context: We're trying to fetch a stream of objects from SQL db, and write straight onto a csv file in azure blob storage. As data volume is large 13+GB, we're setting few query hints to fetch 500 objects at a time, disable cacheing also read committed. We're flushing/Clearing both OpenCSV writer and entity manager every 1500 records. This was working all good, until we did this migration. Few code snippets & Profiler Analysis
Repository Class
Profiler Log: I tried few things such as entityManagerFactory.getCache.evictAll() seems doesn't work.  We're looking to clear these EntityKey objects from Heap. We tried pagination but it's too slow to export such a large volume data. |