[
https://issues.apache.org/jira/browse/HDDS-16729?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Siyao Meng reassigned HDDS-16729:
---------------------------------
Assignee: (was: Siyao Meng)
> Add end-to-end regression coverage for snapshot diff cancellation and
> resubmission
> ----------------------------------------------------------------------------------
>
> Key: HDDS-16729
> URL: https://issues.apache.org/jira/browse/HDDS-16729
> Project: Apache Ozone
> Issue Type: Test
> Reporter: Siyao Meng
> Priority: Major
>
> Follow-up to HDDS-16441:
> https://github.com/apache/ozone/pull/11321#discussion_r4111708010
> HDDS-16441 prevents a cancelled snapshot diff task from marking a resubmitted
> job DONE with the old task's report metadata. The current regression test
> inserts the job-table entry directly and calls updateJobStatusToDone, so it
> does not cover cancellation, resubmission, report generation, or report
> retrieval together.
> Add a deterministic regression test to the existing snapshot integration
> suite:
> # Create two snapshots with a non-empty expected diff.
> # Submit diff A and pause it after report generation, before publishing
> completion.
> # Cancel A through the client API.
> # Call submitSnapshotDiff again for the same snapshot pair, creating B with a
> different jobId. Keep B paused before report generation.
> # Release A and verify B remains IN_PROGRESS with its completion metadata
> unchanged.
> # Release B, wait for completion, and retrieve all report pages. Verify the
> expected entries and successful report integrity checks.
> Use bounded synchronization to control the interleaving, without manually
> creating or replacing job-table entries. Any timing hook must allow
> cancellation and resubmission to proceed without holding the
> SnapshotDiffManager monitor.
> The test must fail when the jobId completion guard introduced by HDDS-16441
> is removed, and pass with the fix. Reuse the existing cluster lifecycle and
> test helpers.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]