Bump to lance-graph 0.5.1 with catalog cache#11
Merged
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This pull request bumps the lance-graph dependency from version 0.4.0 to 0.5.1, which introduces a new CypherEngine API that caches the graph catalog to avoid rebuilding it for each query. This improvement delivers significant performance gains, with some queries showing more than 2x speedup.
Changes:
- Updated lance-graph dependency from 0.4.0 to 0.5.1 in pyproject.toml and uv.lock
- Modified query.py to optionally use CypherEngine with catalog caching when available, while maintaining backward compatibility
- Updated all benchmark tests to pass the cached engine instance
- Added new benchmark results showing performance improvements and archived old results
- Updated documentation with new benchmark numbers
Reviewed changes
Copilot reviewed 7 out of 10 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| uv.lock | Updates lance-graph from 0.4.0 to 0.5.1 with new package hashes and manylinux version |
| pyproject.toml | Updates lance-graph minimum version requirement to 0.5.1 |
| lance_graph/query.py | Adds CypherEngine import with fallback, ENGINE_CACHE for catalog caching, get_engine() helper, and updates all query functions to accept optional engine parameter |
| lance_graph/benchmark_query.py | Updates fixture to create and cache engine instance, propagates engine to all benchmark tests |
| results/lance-graph-0.5.1.txt | New benchmark results showing improved performance |
| results/archive/lance-graph-0.4.0.txt | Archived previous benchmark results |
| results/benchmark_plot.png | Regenerated plot with updated benchmark data |
| lance_graph/README.md | Updates embedded benchmark results to reflect new performance |
| README.md | Updates high-level results table with new lance-graph-0.5.1 timings |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Bumps lance-graph to v0.5.1. This version of lance-graph contains a new
CypherEnginethat reuses (caches) the catalog, so each time a new query runs, the engine doesn't need to rebuild the catalog. See lance-format/lance-graph#124This improves performance by more than 2x in some queries (where rebuilding the catalog was a significant fraction of runtime). For more expensive queries, it's expected that the reusable cache doesn't help much as most of the time is spent in query execution.