lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Pavan Shetty (JIRA)" <>
Subject [jira] [Commented] (SOLR-9490) BoolField always returning false for non-DV fields?
Date Fri, 09 Sep 2016 05:47:20 GMT


Pavan Shetty commented on SOLR-9490:

[~hossman], for me it seems to be the problem with solr's response writer. if i use xml or
json response writer to get the information it returns proper value, true or false for boolean
field, of course through solr admin console.

But if we have  binary response writer then it always returns false(or null) for boolean field,
this one i tested through solr j client which uses this as response writer.

I changed lucene version 6.1 and 6.2 in solrconfig (or solr j version 6.1 / 6.2) and it is
working fine if solr version is below 6.2. if i change solr version to 6.2 then whatever lucene
version (or solr j) it returns false for boolean field. Did reindexing each time i changed
version of solr and lucene and issue is reproduce able for me.

> BoolField always returning false for non-DV fields?
> ---------------------------------------------------
>                 Key: SOLR-9490
>                 URL:
>             Project: Solr
>          Issue Type: Bug
>      Security Level: Public(Default Security Level. Issues are Public) 
>    Affects Versions: 6.2
>            Reporter: Hoss Man
>            Priority: Critical
> 2 diff users posted comments in SOLR-9187 indicating that changes introduced in that
issue have broken BoolFields that do *not* use DocValues...
> [~cjcowie]...
> {quote}
> Hi, I've just picked up 6.2.0. It seems that the change to toExternal() in BoolField
now means that booleans without DocValues return null, which then turns into Boolean.FALSE
in toObject() regardless of whether the value is true or false.
> e.g. with this schema, facet counts are correct, the returned values are wrong.
> {code}
> <field name="f_EVE64" type="boolean" indexed="true" stored="true" required="false"
> <fieldType name="boolean" class="solr.BoolField" sortMissingLast="true"/>
> {code}
> {code}
> "response":{"numFound":2,"start":0,"maxScore":1.0,"docs":[
>       {
>         "id":"124",
>         "f_EVE64":false,
>         "_version_":1544828487600177152},
>       {
>         "id":"123",
>         "f_EVE64":false,
>         "_version_":1544828492458229760}]
>   },
>   "facet_counts":{
>     "facet_queries":{},
>     "facet_fields":{
>       "f_EVE64":[
>         "false",1,
>         "true",1]},
> {code}
> Could toExternal() perhaps fallback to how it originally behaved? e.g.
> {code}
> if (f.binaryValue() == null) {
>       return indexedToReadable(f.stringValue());
> }
> {code}
> {quote}
> [~pavan_shetty]...
> {quote}
> I downloaded solr version 6.2.0 (6.2.0 764d0f19151dbff6f5fcd9fc4b2682cf934590c5 - mike
- 2016-08-20 05:41:37) and installed my core.
> In my schema.xml i have an field like following :
> <field name="stock_status" type="boolean" indexed="true" stored="true" multiValued="false"/>
> Now i am accessing this field using SolrJ (6.1.0). But i am always getting false value
for above field even though it contains true boolean value. This is happening for all boolean
> http://localhost:8983/solr...wt=javabin&version=2 HTTP/1.1
> It is working fine in other response writer.
> If i change the solr version to 6.1.0, with same SolrJ, it starts working. So clearly
this is a bug in version 6.2.0.
> {quote}

This message was sent by Atlassian JIRA

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message