You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Andrés Beck-Ruiz (Jira)" <ji...@apache.org> on 2026/07/10 22:48:00 UTC
[jira] [Updated] (CASSSIDECAR-482) Reconcile stale persisted operational jobs across Sidecar restarts and storage failures
[ https://issues.apache.org/jira/browse/CASSSIDECAR-482?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andrés Beck-Ruiz updated CASSSIDECAR-482:
-----------------------------------------
Priority: Normal (was: Major)
> Reconcile stale persisted operational jobs across Sidecar restarts and storage failures
> ---------------------------------------------------------------------------------------
>
> Key: CASSSIDECAR-482
> URL: https://issues.apache.org/jira/browse/CASSSIDECAR-482
> Project: Sidecar for Apache Cassandra
> Issue Type: Improvement
> Reporter: Andrés Beck-Ruiz
> Priority: Normal
> Labels: CEP-53
>
> Currently, the {{DurableOperationalJobTracker}} persists only two states per job: the initial CREATED record on submission and the terminal status on completion. Intermediate RUNNING and per-node progress are never written, and there is no reconciliation of persisted records against live state. As a result, a record can be left stuck at CREATED if the sidecar restarts mid-operation or if the terminal status update from the {{DurableOperationalJobTracker}} exhausts its retries. Persisting intermediate RUNNING and per-node progress is handled separately in CASSSIDECAR-378, which will narrow but not eliminate this window.
> To close this gap, we should add a startup/periodic reconciliation sweep over {{findAllJobs}} that corrects or flags non-terminal records which no longer match live state. As part of this,
> we need a way to distinguish a record that is genuinely still CREATED from one whose true state was simply never recorded. This can either be done by:
> 1. An internal durability-degraded marker on {{OperationalJobRecord}}
> 2. A new {{OperationalJobStatus}} (e.g. UNKNOWN) surfaced through the existing status field.
> This is a follow-up to CASSSIDECAR-374 and not a regression: the prior in-memory tracker persisted nothing and returned null once a job left memory, so stuck at CREATED is strictly more information than before.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org