Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reachability refactor #336

Closed
coderofstuff opened this issue Nov 28, 2023 · 1 comment
Closed

Reachability refactor #336

coderofstuff opened this issue Nov 28, 2023 · 1 comment
Assignees

Comments

@coderofstuff
Copy link
Collaborator

coderofstuff commented Nov 28, 2023

Follow-up to #325

Reachability store should be refactored in the same way to alleviate the current bottleneck of storing reachability data in a one struct.

Context: performance of IDB is impacted when the DAG becomes wider and RelationsStoreExtensions::insert_batch can take a lot of time. This is due to the block children being stored under one key making the operation to add child blocks O(N^2).

Extra Caveat: in reachability store the children are sorted by their reachability interval to make binary search possible later. If each child is saved separately they won't be sorted. Solution: save the children unsroted, and sort them only when they are cached

@coderofstuff coderofstuff converted this from a draft issue Nov 28, 2023
@someone235 someone235 moved this from 🆕 New to 📋 Backlog in Rust rewrite Nov 30, 2023
@someone235 someone235 self-assigned this Nov 30, 2023
@coderofstuff
Copy link
Collaborator Author

Fixed by #347

@github-project-automation github-project-automation bot moved this from 📋 Backlog to ✅ Done in Rust rewrite Dec 11, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done
Development

No branches or pull requests

2 participants