Skip to content

docs(pro): describe rehash progress and how a rehash survives a lost worker - #16325

Merged
Maffooch merged 6 commits into
devfrom
docs/rehash-progress
Oct 14, 2026
Merged

Maffooch merged 6 commits into
devfrom
docs/rehash-progress

Conversation

@Maffooch

@Maffooch Maffooch commented Oct 13, 2026 •

Copy link
Copy Markdown
Contributor

Description

Documents two Pro changes to the background rehash that a Matching Configuration hash-field change (or the Locations identity rehash) queues:

  • A Rehash Progress card on Settings > Finding Workflow > Matching Configuration lists each tool and matching kind being re-hashed, how many of its batches are done, and its state (Queued, Running, Completed or Failed). A completed re-hash stays on the card for an hour, and a failed one for seven days.
  • The Locations data-migration suite's Identity rehash item now reads Running, with a count of rehashed batches and an estimate of the time left, until every rehash it queued has finished, and cannot be canceled in that phase. It then reports how many rehashes it ran, or Failed if one lost a batch. Before, it read Completed as soon as it had queued them.

The self-hosted note on the deduplication tuning page also covers worker loss. Batches run in parallel, each in its own short-lived process. A worker killed partway through hands its batches back, at the latest once the broker's visibility timeout passes, and a re-hash whose batches were all queued is not planned again. A batch that fails with an error is not retried; a killed batch is retried three times (once, with no retry, when the re-hash has a single batch). Once a batch gives up the re-hash shows Failed, and so does a re-hash that goes a whole day without finishing a batch. The page now names the recovery path, manage.py dedupe --parser "<scan type>" --hash_code_only (it recomputes the tool's non-duplicate Findings), and the Locations page notes that running the identity rehash again does not repeat a failed rehash. DD_REHASH_SHARD_SIZE (default 50,000) sets the batch size.

Pages changed:

  • docs/content/triage_findings/finding_deduplication/PRO__deduplication_tuning.md (Running Deduplication Retroactively on Existing Data)
  • docs/content/asset_modelling/locations/PRO__migrating_from_endpoints.md (the data-migration suite)

Test results

Docs only. Each statement was checked against the Pro implementation it describes.

Documentation

This PR is the documentation. It ships alongside the matching DefectDojo Pro change.

…worker

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@Maffooch Maffooch added this to the 3.4.200 milestone Oct 13, 2026
@Maffooch
Maffooch requested a review from blakeaowens as a code owner October 13, 2026 23:40
@github-actions github-actions Bot added the docs label Oct 13, 2026
Maffooch and others added 5 commits October 14, 2026 12:15
Batches run in parallel, a lost batch is reported as Failed, redelivery happens at the latest after the visibility timeout, and the identity rehash item stays Running and cannot be canceled while its rehashes run.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…e retried

A single-batch rehash is not retried after a kill, failed rehashes stay on the card for seven days, a rehash that has not moved for a day reads Failed, Run Again does not repeat a failed identity rehash, and manage.py dedupe --hash_code_only re-hashes a tool.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ry skips duplicates

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@Maffooch
Maffooch enabled auto-merge October 14, 2026 23:08
@Maffooch
Maffooch added this pull request to the merge queue Oct 14, 2026
Merged via the queue into dev with commit 4c8f558 Oct 14, 2026
32 checks passed
@Maffooch
Maffooch deleted the docs/rehash-progress branch October 14, 2026 23:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants