Repository navigation
Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the
|
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
bitflicker64
left a comment
There was a problem hiding this comment.
R1 inline findings for 545843cc; the summary follows in a separate comment.
R1 review: correct distributed closeness traversalVerdict: not ready yet. The traversal fixes look right (global source IDs, per-partition stop counters, one-time sampling, Reviewed: head Score: 8.0 / 10 (mean of all four reviews, N = 4/4)
Corrections: Reviewers C and D each lost a Minor −0.5 for sampling before deduplication, because base already sampled each step-1 in-edge separately (pre-existing behaviour). Reviewers C and D rated the off-by-one and the test gap at different severities; each score keeps its own reviewer's rating. Findings
Checks: |
bitflicker64
left a comment
There was a problem hiding this comment.
R1 additional inline findings for 545843cc (late reviewer); the R1 summary comment has been updated.
Background
The existing
closeness_centralityimplementation could return incorrect or partial results under distributed execution:int32, sampled edges were not treated as one stable run graph, and output after step 1 could expose adjacency rather than scores.Design
This PR is stacked on #29 because output validation must receive the final master aggregate before any writer starts.
Traversal changes
VertIDStart + localID;sample_rateandwf_improvedbefore graph-sized allocations;AfterStep()as soon as its current frontier has no unseen neighbor;Int64compute value;Finishing after the scatter barrier is important: step 1 can inspect remote adjacency safely, and a path with eccentricity
know completes in stepk, notk + 1.Regression coverage
Tests exercise the actual worker/master lifecycle rather than only helper functions:
0 → 1 → 2 → 3 → 4;Init()→Compute()→AfterStep()across all four BFS layers;3 → 2 → 1 → 0;compute.max_step == eccentricity;Scope relative to #29
Validation
Latest head
0246855passed:Vermeer CIrun 68;CodeQLrun 88;license checkerrun 114.Upstream: 🔗 ASF Computer #374. Until ASF apache#376 is merged, the upstream diff also contains the stacked final-aggregate lifecycle commit.