> Hey, > I have a field defined as such: > > <field name="site_id" type="string" indexed="true" > stored="false" > multiValued="true" /> > > with the string type defined as: > > <fieldtype name="string" class="solr.StrField" sortMissingLast="true" > omitNorms="true"/> > > When I try using some query-time boost parameters using the bq on > values of > this field it seems to behave > strangely in case of documents actually having multiple values: > If i'd do a boost for a particular value ( "site_id:5^1.1" ) it seems > like > all the cases where this field is actually > populated with multiple ones ( i.e a document with field value "5|6" ) > do > not get boosted at all. I verified this using > debugQuery & explainOther=doc_id:<document_with_multiple_values>. > is this a known issue/bug? any work arounds? (i'm using a nightly solr > build > from a few months back.. )
There is no tokenization on 'string' fields, so a query for "5" does not match a doc with a value of "5|6" for this field. You could try using field type 'text' for this and see what you get. You may need to customize it to you the StandardAnalyzer or WordDelimiterFilterFactory to get the right behavior. Using the analysis tool in the solr admin UI to experiment will probably be helpful. -Ken