[
https://issues.apache.org/jira/browse/SOLR-9490?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15644382#comment-15644382
]
Tim Owen commented on SOLR-9490:
--------------------------------
Just to add to this, if anyone was using 6.2.0 and doing document updates, this
bug affected Atomic Updates and will have reset all boolean fields in the
document to false when updating other fields of the document i.e. the
actually-stored and indexed values are changed. We discovered this just
recently and noticed some documents had lost their original boolean value,
because we had been doing Atomic updates during the period we were running
6.2.0 and that had reset the values in the document itself. Even though we've
now upgraded to 6.2.1 so the displayed values are shown correctly, the stored
values have now been changed.
> BoolField always returning false for non-DV fields when javabin involved (via
> solrj, or intra node communication)
> -----------------------------------------------------------------------------------------------------------------
>
> Key: SOLR-9490
> URL: https://issues.apache.org/jira/browse/SOLR-9490
> Project: Solr
> Issue Type: Bug
> Security Level: Public(Default Security Level. Issues are Public)
> Affects Versions: 6.2
> Reporter: Hoss Man
> Assignee: Hoss Man
> Priority: Critical
> Fix For: 6.2.1, 6.3, master (7.0)
>
> Attachments: SOLR-9490.patch, SOLR-9490.patch, Solr9490.java
>
>
> 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" multiValued="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 fields.
> 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
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]