Closed chingiztob closed 3 weeks ago
Just going out on a hunch, but could you test with a Git dependency using the branch from https://github.com/georust/rstar/pull/181 ? Thanks!
Just going out on a hunch, but could you test with a Git dependency using the branch from #181 ? Thanks!
that one?
rstar = { git = "https://github.com/michaelkirk/rstar.git", rev = "222b01a40953c4fae35b38fc7d19416a29136818"}
no, 222b01a40953c4fae35b38fc7d19416a29136818 doesn't change any behavior, it just adds a failing unit test.
https://github.com/georust/rstar/pull/181/commits/12836a98fc8e04e9c0668cb4c4f273f47e430697 changes behavior.
Otherwise, the 0.12.0 to 0.12.1 is only a few commits - you could try doing a git bisect
to chase down the culprit.
You could also try
rstar = { git = "https://github.com/georust/rstar.git", branch = "new-empty-min-max" }
Otherwise, the 0.12.0 to 0.12.1 is only a few commits - you could try doing a git bisect to chase down the culprit.
But yeah, this would certainly be the most thorough solution.
Otherwise, the 0.12.0 to 0.12.1 is only a few commits - you could try doing a git bisect to chase down the culprit.
But yeah, this would certainly be the most thorough solution.
idk why, but i get compiler errors when trying to use git dependency
error[E0277]: the trait bound `rstar::primitives::GeomWithData<geo::Point, std::option::Option<petgraph::prelude::NodeIndex>>: rstar::RTreeObject` is not satisfied
--> cascade-core/src/connectors.rs:62:12
|
62 | tree: &RTree<IndexedPoint>,
| ^^^^^^^^^^^^^^^^^^^ the trait `rstar::RTreeObject` is not implemented for `rstar::primitives::GeomWithData<geo::Point, std::option::Option<petgraph::prelude::NodeIndex>>`
|
= help: the trait `rstar::RTreeObject` is implemented for `rstar::primitives::GeomWithData<R, T>`
note: required by a bound in `rstar::RTree`
--> /home/chingiz/.cargo/git/checkouts/rstar-526d45c905f9146e/4c16830/rstar/src/rtree.rs:167:8
|
164 | pub struct RTree<T, Params = DefaultParams>
| ----- required by a bound in this struct
...
167 | T: RTreeObject,
| ^^^^^^^^^^^ required by this bound in `RTree`
Possibly because you have to use the same dependency in the geo
and geo-types
Cargo.toml
?
You should be overiding using a [patch]
section in your Cargo.toml - see https://doc.rust-lang.org/cargo/reference/overriding-dependencies.html
no, 222b01a doesn't change any behavior, it just adds a failing unit test.
12836a9 changes behavior.
Otherwise, the 0.12.0 to 0.12.1 is only a few commits - you could try doing a
git bisect
to chase down the culprit.
Seems like perf drops after 84d1265. With rstar = { git = "https://github.com/georust/rstar.git", branch = "new-empty-min-max" }
things are back to normal
After upgrading the Rstar crate from version 0.12 to 0.12.1, I've experienced a dramatic slowdown in performance when using
.nearest_neighbor
in my public transit graph application. The operation, which connects all transit stops to the nearest street nodes, has slowed from ~50ms to over 30 seconds. All geometries are f64geo-types
points.-- Expected Performance: ~2-5μs per
.nearest_neighbor
call (as observed with version 0.12) -- Observed Performance: 10-20ms per.nearest_neighbor
call with version 0.12.1 -- Change: Only the Rstar crate version was updated (from 0.12 to 0.12.1).Cargo Flamegraph profiling didn’t pinpoint the issue due to heavy interference from Polars-related calls.