Skip to content

Fix bounded path results (issue #67)#290

Open
nicolas-geysse wants to merge 1457 commits intocwida:mainfrom
theseedship:fix/issue-67-bounded-path
Open

Fix bounded path results (issue #67)#290
nicolas-geysse wants to merge 1457 commits intocwida:mainfrom
theseedship:fix/issue-67-bounded-path

Conversation

@nicolas-geysse
Copy link

Summary

  • Add iterativelengthbounded function that pushes lower/upper bounds directly into the UDF
  • Fix cases where the shortest path is outside bounds but a longer path within bounds exists
  • Fix compilation errors in summarize_property_graph.cpp (missing std::move())

Changes

  • New scalar function iterativelengthbounded(csr_id, v_size, src, dst, lower, upper) → boolean
  • Modified match.cpp to use iterativelengthbounded instead of iterativelength + BETWEEN filter
  • Updated tests to reflect new behavior

Known Limitation

When using ANY SHORTEST with bounds, self-loops (e.g., Daniel→Daniel) may appear with path length 0 because shortestpath doesn't respect bounds. A follow-up implementation of shortestpathbounded would fully resolve this.

Test plan

Fixes #67

🤖 Generated with Claude Code

Dtenwolde and others added 30 commits January 28, 2025 09:53
…on-weakly-connected-component

Rework WCC implementation
…when-match-used-in-subquery

Fix segmentation fault when match was used inside subquery
[still fixing some issues with aliases]
…for-get_csr_v-and-get_csr_e

Fix segmentation faults in csr v and e functions
Improve template bootstraper script
…unused-semicolons

Remove unused semicolons
Dtenwolde and others added 28 commits July 22, 2025 10:14
This reverts commit b1edaff.
Fix issues related to v1.4.1 release
Push lower/upper bounds directly into the UDF instead of post-filtering
with BETWEEN. This fixes cases where the shortest path is outside bounds
but a longer path within bounds exists.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Fix std::move() missing in summarize_property_graph.cpp
- Update test expectations to include self-loops found by iterativelengthbounded
- Add TODO comments noting shortestpathbounded is needed for full fix

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Test if bounded path lengths get correct results