AnsweredAssumed Answered

Lucene boolean search is broken?

Question asked by kbryd on Apr 18, 2009
Latest reply on Aug 3, 2009 by mrogers
Hello

I have been struggling with following issue. I have a type with a boolean property:

<type name="plcy:commission">
   <title>Commission</title>
   <parent>cm:content</parent>
   <properties>
      <property name="plcy:commission_accounted">
         <title>Accounted</title>
         <type>d:boolean</type>
         <default>false</default>
      </property>
      …
      …

Now, when I search with Lucene using a query:

+TYPE:"plcy:commission" AND +@plcy\:commission_accounted:"true"

I get also results which have plcy:commission_accounted set to 'false', I have also tried other queries like:


+TYPE:"plcy:commission" +@plcy\:commission_accounted:"true"
+TYPE:"plcy:commission" +@plcy\:commission_accounted:true
+TYPE:"plcy:commission" AND +(@plcy\:commission_accounted:true)
+@plcy\:commission_accounted:true

etc. and I _always_ get wrong results, for example (node's id, value and the class name of the value):

2e5f8362-6696-4def-9534-9821a49806c2 true class java.lang.Boolean
17dc9fdf-0f92-4444-82f1-944d2a91e17e true class java.lang.Boolean
64bbb631-79aa-4ae9-944e-d5d0c63be064 false class java.lang.Boolean
84ce8e4c-3317-4fc6-a3c8-902f5a5388b3 false class java.lang.Boolean
92b6949e-0db5-4d0a-8972-c90ab248101c false class java.lang.Boolean
6d241b53-5e47-4cb0-a50b-1b9783d3ba19 false class java.lang.Boolean

Funny thing is that when I search for objects with commission_accounted=false I always get correct results. Any ideas what I am doing wrong?

Thanks
Karol

Outcomes