[ 
https://issues.apache.org/jira/browse/HDDS-16091?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Arafat Khan resolved HDDS-16091.
--------------------------------
    Fix Version/s: 2.3.0
       Resolution: Fixed

> Recon fills disk with leaked checkpoints and crashes on startup when local OM 
> DB is missing
> -------------------------------------------------------------------------------------------
>
>                 Key: HDDS-16091
>                 URL: https://issues.apache.org/jira/browse/HDDS-16091
>             Project: Apache Ozone
>          Issue Type: Bug
>          Components: Ozone Recon
>    Affects Versions: 2.3.0
>            Reporter: Arafat Khan
>            Assignee: Arafat Khan
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 2.3.0
>
>
> During long replication runs, Recon's {{/var/lib/hadoop-ozone/recon}} 
> directory grows unbounded (observed ~501 GB) and fills the disk. This is a 
> regression from HDDS-13809: the checkpoint cleanup was changed to read the 
> checkpoint directory location _after_ closing the DB store, but closing sets 
> the store to {{null}} — so the temporary reinitialization checkpoints (each a 
> full copy of the OM DB) are never deleted.
> Once the disk is cleared, if the local OM snapshot DB is missing while stale 
> task-status rows still exist, Recon crashes on startup with an NPE - 
> {code:java}
> java.lang.NullPointerException: ...ReconOMMetadataManager.getStore() is null 
> at ReconTaskControllerImpl.cleanTempCheckPointPath(...) {code}
> The HTTP server starts before the crash, so the process stays up but the 
> datanode RPC service never starts — datanodes cannot connect and show as DEAD.
> *Fix*
>  # Revert the HDDS-13809 Recon changes so the checkpoint directory is 
> captured _before_ the store is closed, then deleted — restoring correct 
> cleanup.
>  # Add null-store guards in {{cleanTempCheckPointPath}} and 
> {{{}cleanupPreExistingCheckpoints{}}}, and skip startup reinitialization when 
> the local OM DB store is not yet initialized. The scheduled full-snapshot 
> sync then downloads a fresh OM DB instead of crashing.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to