You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Ishan Chattopadhyaya (JIRA)" <ji...@apache.org> on 2016/12/09 11:56:58 UTC

[jira] [Comment Edited] (SOLR-5944) Support updates of numeric DocValues

    [ https://issues.apache.org/jira/browse/SOLR-5944?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15735138#comment-15735138 ] 

Ishan Chattopadhyaya edited comment on SOLR-5944 at 12/9/16 11:56 AM:
----------------------------------------------------------------------

{quote}
Specifically: when I tried to remove it, I started seeing NPEs from SolrIndexSearcher.decorateDocValueFields in various tests:
{quote}

I tried to chase this bug down, and I think it has led me to some learnings regarding the explicit vs dynamic fields (why dynamic fields are any different) issue.

{quote}
The reason for this is that when a document is created, DV fields for all explicit fields are created. But when a non-existent dynamic field is attempted to be updated subsequently, then the underlying DV field doesn't exist.
{quote}
I think I missed the fact that "DV fields for all explicit fields are created" *only if* they have a default value set on them. Otherwise, explicit fields are no different from dynamic fields (in that they are not created until indexed for the first time).

So, therefore, I think we should be checking if the field exists or not, irrespective of explicit or dynamic. And if the field doesn't exist, we should just delegate to a regular atomic update. Do you think it makes sense?


was (Author: ichattopadhyaya):
{quote}
Specifically: when I tried to remove it, I started seeing NPEs from SolrIndexSearcher.decorateDocValueFields in various tests:
{quote}

I tried to chase this bug down, and I think it has led me to some learnings regarding the explicit vs dynamic fields (why dynamic fields are any different) issue.

{quote}
The reason for this is that when a document is created, DV fields for all explicit fields are created. But when a non-existent dynamic field is attempted to be updated subsequently, then the underlying DV field doesn't exist.
{quote}
I think I missed the fact that "DV fields for all explicit fields are created" *only if* they have a default value set on them. Otherwise, explicit fields are no different from dynamic fields.

So, therefore, I think we should be checking if the field exists or not, irrespective of explicit or dynamic. And if the field doesn't exist, we should just delegate to a regular atomic update. Do you think it makes sense?

> Support updates of numeric DocValues
> ------------------------------------
>
>                 Key: SOLR-5944
>                 URL: https://issues.apache.org/jira/browse/SOLR-5944
>             Project: Solr
>          Issue Type: New Feature
>            Reporter: Ishan Chattopadhyaya
>            Assignee: Shalin Shekhar Mangar
>         Attachments: DUP.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, TestStressInPlaceUpdates.eb044ac71.beast-167-failure.stdout.txt, TestStressInPlaceUpdates.eb044ac71.beast-587-failure.stdout.txt, TestStressInPlaceUpdates.eb044ac71.failures.tar.gz, defensive-checks.log.gz, demo-why-dynamic-fields-cannot-be-inplace-updated-first-time.patch, hoss.62D328FA1DEA57FD.fail.txt, hoss.62D328FA1DEA57FD.fail2.txt, hoss.62D328FA1DEA57FD.fail3.txt, hoss.D768DD9443A98DC.fail.txt, hoss.D768DD9443A98DC.pass.txt
>
>
> LUCENE-5189 introduced support for updates to numeric docvalues. It would be really nice to have Solr support this.



--
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