ivandika3 opened a new pull request, #4696: URL: https://github.com/apache/ozone/pull/4696
## What changes were proposed in this pull request? As OM performance test during Recon OM full snapshot, I removed the Recon DB directory before restarting Recon to trigger full snapshot (essentially bootstrapping a new Recon). However, it is found after OM DB is successfully downloaded, during the reprocess of ContainerKeyMapperTask, the Recon heap usage increased significantly for large keys table (our cluster has around 350 million keys). It is found that the issue was caused due to in-memory maps that store all the OM keys during the reprocess. This is a regression introduced in [HDDS-6783](https://jira.shopee.io/browse/HDDS-6783). In essence, the patch is to revert the implementation of [HDDS-6783](https://jira.shopee.io/browse/HDDS-6783) ONLY for ContainerKeyMapperTask#reprocess. - ContainerKeyMapperTask#process should not increase the heap memory significantly since the number of delta updates are already limited by the Recon configurations - [HDDS-6783](https://jira.shopee.io/browse/HDDS-6783) aims for atomicity during the Recon OM task updates. However since ContainerKeyMapperTask#reprocess truncate all the Recon Container DB before it starts and rebuilt the Recon Container DB, I think it's acceptable. After the patch is applied, the Recon heap size stays stable during the full snapshot. Any suggestion for better approach is welcomed. ## What is the link to the Apache JIRA https://issues.apache.org/jira/browse/HDDS-8580 ## How was this patch tested? Manual test. Attached is Recon heap memory before and after the patch.  -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
