[ 
https://issues.apache.org/jira/browse/SOLR-5052?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Munendra S N resolved SOLR-5052.
--------------------------------
       Resolution: Duplicate
    Fix Version/s:     (was: 6.0)
                       (was: 4.9)

Resolving this in favour of SOLR-6376 (discussions happening in other one)

> eDisMax Field Aliasing behaving oddly when invalid field is present
> -------------------------------------------------------------------
>
>                 Key: SOLR-5052
>                 URL: https://issues.apache.org/jira/browse/SOLR-5052
>             Project: Solr
>          Issue Type: Bug
>          Components: query parsers
>    Affects Versions: 4.3.1
>         Environment: AWS / Ubuntu
>            Reporter: Trey Grainger
>            Priority: Minor
>              Labels: alias, edismax, parser, query
>
> Field Aliasing for the eDisMax query parser behaves in a very odd manner if 
> an invalid field is specified in any of the aliases.  Essentially, instead of 
> throwing an exception on an invalid alias, it breaks all of the other aliased 
> fields such that they will only handle the first term correctly.  Take the 
> following example:
> /select?defType=edismax&f.who.qf=personLastName_t^30 
> personFirstName_t^10&f.what.qf=itemName_t 
> companyName_t^5&f.where.qf=cityName_t^10 INVALIDFIELDNAME^20 countryName_t^35 
> postalCodeName_t^30&q=who:(trey grainger) what:(solr) where:(atlanta, 
> ga)&debugQuery=true&df=text
> The terms "trey", "solr" and "atlanta" correctly search across the aliased 
> fields, but the terms "grainger" and "ga" are incorrectly being searched 
> across the default field ("text").  Here is parsed query from the debug:
> <lst name="debug">
> <str name="rawquerystring">
> who:(trey grainger) what:(solr) where:(decatur, ga)
> </str>
> <str name="querystring">
> who:(trey grainger) what:(solr) where:(decatur, ga)
> </str>
> <str name="parsedquery">
> (+(DisjunctionMaxQuery((personFirstName_t:trey^10.0 | 
> personLastName_t:trey^30.0)) DisjunctionMaxQuery((text:grainger)) 
> DisjunctionMaxQuery((itemName_t:solr | companyName_t:solr^5.0)) 
> DisjunctionMaxQuery((postalCodeName_t:decatur^30.0 | 
> countryName_t:decatur^35.0 | cityName_t:decatur^10.0)) 
> DisjunctionMaxQuery((text:ga))))/no_coord
> </str>
> <str name="parsedquery_toString">
> +((personFirstName_t:trey^10.0 | personLastName_t:trey^30.0) (text:grainger) 
> (itemName_t:solr | companyName_t:solr^5.0) (postalCodeName_t:decatur^30.0 | 
> countryName_t:decatur^35.0 | cityName_t:decatur^10.0) (text:ga))
> </str>
> I think the presence of an invalid field in a qf parameter should throw an 
> exception (or throw the invalid field away in that alias), but it shouldn't 
> break the aliases for other fields.  
> For the record, if there are no invalid fields in any of the aliases, all of 
> the aliases work.  If there is one invalid field in any of the aliases, all 
> of the aliases act oddly like this.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

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

Reply via email to