Hey, I got it. Thank you so much. On Sat, Feb 18, 2017 at 5:33 PM, Michael McCandless < luc...@mikemccandless.com> wrote:
> You'll need to make your own buildFacetResults method in your > DrillSideways subclass, and inside there you compute the facet counts > for each dim using the implementation that dim used (taxonomy, sorted > set, or range). The TestRangeFacetCounts shows another example of > this. > > Mike McCandless > > http://blog.mikemccandless.com > > > On Sat, Feb 18, 2017 at 6:33 AM, Chitra R <chithu.r...@gmail.com> wrote: > > Hi, > > > > RangeFaceting computation was working fine while adding numeric Ranges in > > DrillDownQuery. And this is not my issue. > > > > My question is, > > > > I need to compute string facets (via SortedSetDocValuesFacetCounts) using > > drill sideways search by adding numeric Ranges in DrillDownQuery... This > > case only throws an exception. Is it possible?? > > > > > > And I know, Drillsideways search retains previous level facets and its > count > > and it will be achieved by taking dimensions from drilldownQuery. In my > > case, "price" is the dimension which was indexed as numericDocValuesField > > and added in drilldownQuery. So only it was throwing an exception when I > > search through drillsideways search. Am I right or missed anything? > > > > > > Kindly help me to solve my issue. > > > > Regards, > > Chitra > > > > On Sat, Feb 18, 2017 at 4:29 PM, Michael McCandless > > <luc...@mikemccandless.com> wrote: > >> > >> Hi, > >> > >> I think you are close! All you need to do is make a subclass of > >> DrillSideways and override the buildFacetsResults method to do the > >> range faceting on your numeric dims. > >> > >> I just pushed an improvement to RangeFacetsExample.java showing how to > >> do this: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/ > 1e4463e3 > >> > >> Mike McCandless > >> > >> http://blog.mikemccandless.com > >> > >> > >> On Fri, Feb 17, 2017 at 11:15 AM, Chitra R <chithu.r...@gmail.com> > wrote: > >> > Hey, > >> > I have indexed "author","module_id" fields as > >> > SortedSetDocValuesFacetField and "time", "price","salary" fields as > >> > NumericDocValuesField. > >> > > >> > My Category looks like: > >> > > >> > *module_id > >> > -> author > >> > *price > >> > > >> > module_id and price are parent categories. After selecting any one of > >> > the > >> > facets from module_id, sub-category ie "author" field will be shown. > >> > > >> > Use-case: > >> > > >> > 1. I have received path values from user as "module_id:1" and > "price:100 > >> > TO > >> > 500" and also need to perform drillsideways search. > >> > > >> > initializing drilldown query > >> > > >> >> DrillDownQuery drillDownQuery = new DrillDownQuery(facetsConfig, > >> >> userGivenSearchQuery); > >> >> drillDownQuery.add("module_id","1"); > >> >> drillDownQuery.add("price",NumericRangeQuery.newDoubleRange("price", > >> >> 100.0, 200.0, range.minInclusive, range.maxInclusive)); > >> > > >> > > >> > hits and facets computation > >> > > >> >> DrillSideways sideways = new DrillSideways(searcher, facetsConfig, > >> >> docValuesReaderState); > >> >> DrillSideways.DrillSidewaysResult drillResult = > >> >> sideways.search(drillDownQuery, booleanFilter, null, 10, sort, > >> >> doDocScore, > >> >> doMaxScore); > >> >> int totalHits = drillResult.hits.totalHits(); --> it show accurate > >> >> total > >> >> hits documents > >> >> List<FacetResult> facetResult = drillResult.facets.getAllDims(10) > --> > >> >> this > >> >> line throws an exception. > >> > > >> > > >> > Exception > >> > > >> >> > >> >> > >> >> > >> >> java.lang.IllegalArgumentException: dimension "price" was not > indexed > >> >> > >> >> at > >> >> > >> >> org.apache.lucene.facet.sortedset.SortedSetDocValuesFacetCounts. > getTopChildren(SortedSetDocValuesFacetCounts.java:91) > >> >> > >> >> at org.apache.lucene.facet.MultiFacets.getAllDims( > MultiFacets.java:74) > >> > > >> > > >> > > >> > Am I did anything wrong??? > >> > > >> > > >> > Kindly post your suggestions. > >> > > >> > Thanks, > >> > Chitra > >> > > >> > > >> > > >> > On Fri, Feb 17, 2017 at 9:11 PM, Michael McCandless > >> > <luc...@mikemccandless.com> wrote: > >> >> > >> >> Hi, how are you instantiating your MultiFacets? You should be > passing > >> >> e.g. a LongRangeFacetCounts instance for your "time" dimension, which > >> >> should prevent that exception. > >> >> > >> >> For DrillSideways, I think you must subclass, and then override > >> >> buildFacetResult to compute your range facets, because that class > >> >> assumes it's either indexed facets or sorted set doc values facets. > >> >> > >> >> Mike McCandless > >> >> > >> >> http://blog.mikemccandless.com > >> >> > >> >> > >> >> On Fri, Feb 17, 2017 at 9:14 AM, Chitra R <chithu.r...@gmail.com> > >> >> wrote: > >> >> > Any suggestions???? Kindly help me to move forward. > >> >> > > >> >> > Regards, > >> >> > Chitra > >> >> > > >> >> > On Wed, Feb 15, 2017 at 9:23 PM, Chitra R <chithu.r...@gmail.com> > >> >> > wrote: > >> >> >> > >> >> >> Hi, > >> >> >> Thanks for the suggestion. But in the case of drill > >> >> >> sideways > >> >> >> search, retrieving allDimensions (using Facets.getAllDimension()) > >> >> >> threw > >> >> >> an > >> >> >> exception which is shown below... > >> >> >> > >> >> >> 1. While opening DocValuesReaderState, global ordinals and > ordinals > >> >> >> Range > >> >> >> map will be computed for '$facets' field only. > >> >> >> 2. NumericDocValuesField never indexes under '$ facets' so ordinal > >> >> >> RangeMap will be null for the numeric field ie 'time'. > >> >> >> > >> >> >>>> java.lang.IllegalArgumentException: dimension "time" was not > >> >> >>>> indexed > >> >> >>>> > >> >> >>>> at > >> >> >>>> > >> >> >>>> > >> >> >>>> org.apache.lucene.facet.sortedset. > SortedSetDocValuesFacetCounts.getTopChildren( > SortedSetDocValuesFacetCounts.java:91) > >> >> >>>> > >> >> >>>> t > >> >> >>>> org.apache.lucene.facet.MultiFacets.getAllDims( > MultiFacets.java:74) > >> >> >> > >> >> >> > >> >> >> In my use case, > >> >> >> > >> >> >> Both string pathTraversed and Numeric PathTraversedRanges will > >> >> >> occur. > >> >> >> And both faceted search and drill sideways search will be used. > >> >> >> > >> >> >> So how can I add path-traversed numericRanges? > >> >> >> > >> >> >> Am I missed anything? > >> >> >> > >> >> >> > >> >> >> Kindly post your suggestions. > >> >> >> > >> >> >> > >> >> >> Regards, > >> >> >> Chitra > >> >> >> > >> >> >> On Wed, Feb 15, 2017 at 3:28 PM, Michael McCandless > >> >> >> <luc...@mikemccandless.com> wrote: > >> >> >>> > >> >> >>> Hi, have a look at the RangeFacetsExample.java under the > >> >> >>> lucene/demo > >> >> >>> module... it shows how to do this. > >> >> >>> > >> >> >>> Mike McCandless > >> >> >>> > >> >> >>> http://blog.mikemccandless.com > >> >> >>> > >> >> >>> > >> >> >>> On Tue, Feb 14, 2017 at 12:07 PM, Chitra R < > chithu.r...@gmail.com> > >> >> >>> wrote: > >> >> >>> > Hi, > >> >> >>> > We have planned to implement both string and numeric > faceting > >> >> >>> > using > >> >> >>> > docvalues field. > >> >> >>> > > >> >> >>> > For string faceting, we have added pathtraversed dimensions in > >> >> >>> > drilldownquery. But for numeric faceting , how and where can we > >> >> >>> > add > >> >> >>> > pathtraversed ranges during nextlevel faceted search.? > >> >> >>> > And which is the better way to add pathtraversed ranges > >> >> >>> > ( ie adding pathtraversed ranges in numericRangeQuery or > >> >> >>> > adding pathtraversed ranges in filter).??Or Any other > >> >> >>> > solution.??? > >> >> >>> > > >> >> >>> > Thanks & Regards, > >> >> >>> > Chitra > >> >> >>> > > >> >> >>> > > >> >> >>> > Sent from my iPhone > >> >> >>> > > >> >> >>> > > >> >> >>> > ------------------------------------------------------------ > --------- > >> >> >>> > To unsubscribe, e-mail: java-user-unsubscribe@lucene. > apache.org > >> >> >>> > For additional commands, e-mail: java-user-help@lucene.apache. > org > >> >> >>> > > >> >> >> > >> >> >> > >> >> > > >> > > >> > > > > > >