You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ozone.apache.org by "Arafat Khan (Jira)" <ji...@apache.org> on 2026/08/03 08:29:00 UTC

[jira] [Assigned] (HDDS-16074) Make Recon RECON_TASK_STATUS column upgrade idempotent and fail on error.

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

Arafat Khan reassigned HDDS-16074:
----------------------------------

    Assignee: Arafat Khan

> Make Recon RECON_TASK_STATUS column upgrade idempotent and fail on error.
> -------------------------------------------------------------------------
>
>                 Key: HDDS-16074
>                 URL: https://issues.apache.org/jira/browse/HDDS-16074
>             Project: Apache Ozone
>          Issue Type: Improvement
>          Components: Ozone Recon
>            Reporter: Arafat Khan
>            Assignee: Arafat Khan
>            Priority: Major
>
> The upgrade action that adds the {{last_task_run_status}} and {{is_current_task_running}} columns to the {{RECON_TASK_STATUS}} table ({{{}ReconTaskStatusTableUpgradeAction{}}}) has two robustness gaps:
>  # *It swallows failures.* Unlike the other upgrade actions, {{execute()}} catches and logs any error but does not rethrow. If the column migration fails, layout finalization still marks the version as complete — leaving a table without the required columns that _appears_ upgraded. Subsequent writes to {{RECON_TASK_STATUS}} then fail.
>  # *It is not idempotent and cannot complete a partial migration.* It unconditionally adds the columns and resets every row to 0, so it cannot safely re-run on a table that already has the columns, and cannot recover a migration that was interrupted after adding a column but before enforcing {{{}NOT NULL{}}}.
>  



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

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org