-
Notifications
You must be signed in to change notification settings - Fork 218
Description
I've made a new version of rtree at https://github.com/davidmoten/rtree2. It has a different artifactId rtree2 and different package names so can co-exist with rtree if required.
Instead of supporting RxJava 2 API I've dropped the reactive API completely and now search methods return Iterables. You can then wrap the return with whatever reactive library you like. For instance for RxJava2:
Flowable.fromIterable(tree.search(rect))One really interesting consequence of dropping the reactive approach in the API is that performance went down about 20% on search benchmarks. It seems that high request fast paths were performing really well and converting to Iterable which is like a request 1, request 1, etc Observable/Flowable is not as fast. Anyway I think the flexibility benefit and reduced dependencies is worth the performance hit. I'll keep looking for opportunities to bring perf up again.
Note also that I've dropped serialization because it's a big maintenance pain. You can do your own serialization and deserialize using bulk packing kindly contributed by @ambling in #67.
I've released rtree2 0.9-RC1 to Maven Central which you can try out.