gsmiller commented on PR #11901:
URL: https://github.com/apache/lucene/pull/11901#issuecomment-1322333279

   > Ah yeah good point on the FacetSets... so I actually already use 
LongRangeDocValueFields here: public class LongRangeDocValuesFacetField extends 
LongRangeDocValuesField. The difference is that the 
LongRangeDocValuesFacetField constructor enforces a single dimension. I'd 
imagine if we want to extend it, it shouldn't be that hard to just add another 
constructor here.
   
   Right. What I'm questioning here is the need for 
`LongRangeDocValuesFacetField`. If the only value it adds is a ctor that 
"speaks" in a single-dimension, I wonder if we should keep it or just ask our 
users to use `LongRangeDocValuesField` directly. If we think users would 
benefit from a simpler, single-dim API, let's consider adding that directly to 
`LongRangeDocValuesField`.
   
   > Right now what happens is that the query can have multiple ranges, which 
all need to "match" the stored range, which is pretty much the "cross product" 
idea I talked about earlier which we won't be doing.
   
   I don't think I'm following. Are you referring to the current "slow query" 
implementation? It doesn't support multiple ranges right? It supports multiple 
dimensions? And yes- each dimension needs to satisfy the requirements specified 
by the provided `QueryType`. I imaging faceting doing the same thing, but 
separately considering each range for facet counting. Maybe we're confusing the 
concept of "multiple dimensions" with "multiple ranges" in our discussion here?
   
   > or just go ahead and do the multidimensional implementation
   
   Yeah, I think that's fine. I don't think it will be significantly more 
complex to implement multi-dim support. I think the only complexity comes in 
thinking about the problem and conveying something usable to users (who, I 
suspect, will be looking for a single-dim implementation most of the time).
   
   > Edit: now that I think about it a bit more, I'm not actually doing a cross 
product, I think I was getting the concept of multidimensional ranges for 
multiple ranges mixed up in my mind. I'll need to look more into the API to see 
how we can make it extensible in case we want to make this multi-dimensional in 
the future.
   
   Ah ok. Maybe disregard my above comment about mixing up "multiple ranges" 
and "multiple dimensions." Sounds like maybe that's whats going on. Let me know 
if I can help disambiguate. Thanks!
   
   
   
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org
For additional commands, e-mail: issues-h...@lucene.apache.org

Reply via email to