-
-
Notifications
You must be signed in to change notification settings - Fork 672
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
use group_by in translate_codec_idx_to_original_idx #1736
Conversation
f28713a
to
6151c51
Compare
Codecov Report
@@ Coverage Diff @@
## main #1736 +/- ##
==========================================
- Coverage 94.13% 94.12% -0.02%
==========================================
Files 266 267 +1
Lines 50814 50950 +136
==========================================
+ Hits 47835 47955 +120
- Misses 2979 2995 +16
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. |
78fef9f
to
eb22259
Compare
eb22259
to
f954ef8
Compare
// somehow. | ||
// | ||
// One potential solution would be to replace the iterator approach with something similar. | ||
inner: Rc<RefCell<GroupByShared<I, F, K>>>, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This might be a use case for GAT + LendingIterator
maybe? But that's not an Iterator
unfortunately.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's merge this for the moment but I suspect there is a problem in the API.
My understanding is that this function (the id conversion thing) is meant to be used in the range queries. The current Column trait get_range is not working as an iterator.
If we focus on catering to this usage, we do not need an Iterator
.
The group by logic can be implemented as loops.
It will probably unlock more
from your group_by optimisation:
the Iterator won't be boxed anymore , and within a given block, the
loop will be doing static dispatch.
Yes this is for range queries, but for that we call:
So we need to translate the |
@PSeitz yes. let's merge this for the moment. |
The
group_by
has some overhead, and for the strictly sparse case it's just worse. But it will address a pathological case when there are cluster of dense blocks in a sparse field with a many search results in it. I think that's a valid scenario, when users start to use the JSON type to ingest and search different kinds of data into a single index