Looks like the format didn't come through in the email. ch, vxrch, and 
cisco7204xvrch are all in position 4.

But, your suggestion of turning off catenateAll may work out. I'll have do some 
testing to make sure that it doesn't have any unintended consequences. 
Specifically, I am worried about a case like "XYZ123-3" and the customer 
searching on "XYZ1233". Ideally, that would produce a match.




________________________________
From: Yonik Seeley <yo...@lucidimagination.com>
To: solr-user@lucene.apache.org
Sent: Monday, April 20, 2009 5:14:32 PM
Subject: Re: query on part number not matching

On Mon, Apr 20, 2009 at 6:59 PM, Kevin Osborn <osbo...@yahoo.com> wrote:
>
> I have a manufacturer part number: CISCO7204VXR-CH. The indexer produces:
>
> 1        2       3      4
> cisco    7204    vxr    ch
>                        vxrch
>                        cisco7204vxrch

It looks like you're using catenateAll, which doesn't do any good if
the query analyzer splits on alpha-numeric transitions.  Turn that off
to save yourself some space.


> If I query on CISCO7204VXR-CH, I get:
>
> 1        2       3      4
> cisco    7204    vxr    ch
>
> Everything matches. But if I query on CISCO7204VXRCH, I get
>
> 1        2       3
> cisco    7204    vxrch
>
> This
> does not match on term 3.

But it does...  The index has vxr, vxrch, and cisco7204vxrch all at position 3.


> So, the match fails in this case and returns
> no results. It seems like it is demanding that every term in the index
> matches, which doesn't make a whole lot of sense. Should just be the
> query, right?

Right.  Lucene doesn't really have phrase queries with optional terms
in it though.

-Yonik



      

Reply via email to