Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 7666F200B6B for ; Fri, 9 Sep 2016 17:21:23 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 75070160ACA; Fri, 9 Sep 2016 15:21:23 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id BED2C160AA3 for ; Fri, 9 Sep 2016 17:21:22 +0200 (CEST) Received: (qmail 37993 invoked by uid 500); 9 Sep 2016 15:21:21 -0000 Mailing-List: contact dev-help@lucene.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@lucene.apache.org Delivered-To: mailing list dev@lucene.apache.org Received: (qmail 37464 invoked by uid 99); 9 Sep 2016 15:21:21 -0000 Received: from arcas.apache.org (HELO arcas) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 09 Sep 2016 15:21:21 +0000 Received: from arcas.apache.org (localhost [127.0.0.1]) by arcas (Postfix) with ESMTP id CB7102C1B8B for ; Fri, 9 Sep 2016 15:21:20 +0000 (UTC) Date: Fri, 9 Sep 2016 15:21:20 +0000 (UTC) From: "Colvin Cowie (JIRA)" To: dev@lucene.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (SOLR-9490) BoolField always returning false for non-DV fields? MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 archived-at: Fri, 09 Sep 2016 15:21:23 -0000 [ https://issues.apache.org/jira/browse/SOLR-9490?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15477310#comment-15477310 ] Colvin Cowie commented on SOLR-9490: ------------------------------------ Unfortunately I don't think that I personally can provide a unit test (without getting approval to do so). However I can reproduce the error reliably just by deploying the cloud example and creating a document: {noformat} solr stop -all rm -rf ../example/cloud solr -e cloud -noprompt curl http://localhost:8983/solr/gettingstarted/update -d "[ {\"f_b\": true, \"id\": \"1\" }, {\"f_b\": false, \"id\": \"2\" }]" {noformat} http://localhost:8983/solr/gettingstarted/select?facet.field=f_b&facet=on&indent=on&q=*:*&wt=json {noformat} { "responseHeader":{ "zkConnected":true, "status":0, "QTime":78, "params":{ "q":"*:*", "facet.field":"f_b", "indent":"on", "facet":"on", "wt":"json"}}, "response":{"numFound":2,"start":0,"maxScore":1.0,"docs":[ { "f_b":false, "id":"1", "_version_":1545007494796935168}, { "f_b":false, "id":"2", "_version_":1545007494796935168}] }, "facet_counts":{ "facet_queries":{}, "facet_fields":{ "f_b":[ "false",1, "true",1]}, "facet_ranges":{}, "facet_intervals":{}, "facet_heatmaps":{}}} {noformat} The strange thing however, is that when I try and reproduce the problem with our actual configuration and test data which fails on the javabin response, I struggle to get the json response to produce the wrong result as above. It appears in that case that {code}toExternal(){code} isn't being called at all. I don't know enough about the code to know why/how it would be bypassing {code}toExternal(){code} in that case though. > BoolField always returning false for non-DV fields? > --------------------------------------------------- > > 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 > 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} > > > {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 : > > 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: dev-unsubscribe@lucene.apache.org For additional commands, e-mail: dev-help@lucene.apache.org