Erick, Thanks for your reply.
I am working with approximately 1 million documents. They are indexed in 4 servers. Each document has multiple fields. I am using ParallelMultiSearcher for searching purpose. I tried a few queries in the title(TTL) field. i started with a simple query without boolean operators. *1. TTL:data => 3733 results (all matches had "data" in title)* Then I tried a second one with AND operator. *2. TTL:data AND TTL:store => 19 results* I analyzed the results. the results had both "data" and "store" in the title. *I then tried OR operator* *3. TTL:data AND TTL:store OR TTL:variable* I got 3,733 results., same as the query TTL:data. I even tried giving a meaningless query TTL:data AND TTL:storettttt OR TTL:variablettttt => 3,733 results (The results were same as that of TTL:data.) TTL:data AND TTL:computer OR TTL:device => 3,733 results (this also showed the same results as above) The same thing repeats for other cases too. The queries below also behaved the same way. i.e. - 1. TTL:store AND TTL:data OR TTL:variable => 76 results 2. TTL:store AND TTL:datatttt OR TTL:variabletttt => 76 results 3. TTL:store AND TTL:computer OR TTL:device => 76 results 1. TTL:variable AND TTL:data OR TTL:store => 1,496 results 2. TTL:variable AND TTL:datatttt OR TTL:storetttt => 1,496 results 3. TTL:variable AND TTL:computer OR TTL:device => 1,496 results I hope you have a clearer picture of my issue now. Thanks, Sonu On Wed, May 28, 2008 at 7:09 PM, Erick Erickson <[EMAIL PROTECTED]> wrote: > It's unclear what you *should* expect. How is your data > distributed? > > In other words, how many documents do you have? In this example, > for instance, > 1. TTL:data AND TTL:store OR TTL:variable => 3,733 results > it considered the TTL:data part only. > > it's perfecily reasonable if every document that had "variable" in the > field *also* has "data" and "store" in the field. So your numbers > don't give us much to work with..... > > Remember, though, that Lucene syntax isn't a pure boolean syntax. See > > http://wiki.apache.org/lucene-java/BooleanQuerySyntax > > And when in doubt parenthesize <G>... > > Best > Erick > > On Wed, May 28, 2008 at 7:44 AM, Sonu Sudhakar <[EMAIL PROTECTED]> wrote: > > > Hi, > > > > I have some issue with boolean queries. > > > > I am using Lucene-core-2.3.1. > > > > I have done test on boolean query with 3 terms (data, store, variable) in > > my > > TTL field. The TTL field is indexed and searched using StandardAnalyzer. > > > > The three terms when searched individually gave the following result > > > > 1. TTL:data => 3,733 results > > 2. TTL:store => 76 results > > 3. TTL:variable => 1,496 results > > > > But found issue when combining these terms with boolean operators. > > > > e.g. > > 1. TTL:data AND TTL:store OR TTL:variable => 3,733 results > > it considered the TTL:data part only. > > > > 2. TTL:store AND TTL:data OR TTL:variable => 76 results > > it considered the TTL:store part only. > > > > 3. TTL:variable AND TTL:data OR TTL:store => 1,496 results > > it considered the TTL:variable part only. > > > > But I am getting correct result when combining terms with 'AND' operator. > I > > think the issue is with 'OR' operator. > > > > > > Could anybody give an explanation for this behavior of lucene? > > Could you give suggestions to rectify this? > > > > Thanks, > > Sonu > > >