lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jim Musil (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (SOLR-3831) atomic updates do not distribute correctly to other nodes
Date Thu, 13 Sep 2012 22:13:07 GMT

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

Jim Musil commented on SOLR-3831:
---------------------------------

Actually, it appears that atomic updates to any type of field do not distribute correctly
to the other nodes.

The root problem seems to be that when the subsequent node receives the update request, it
does not apply any of the atomic update logic that's been added to DistributedUpdateProccessor.getUpdatedDocument().
Instead it tries to use the string representation of the Map object (eg "{set=1}") as the
value.

If I send the following json to update [{"id":"1", "cat_s":{"set":"999"}}] The leader sets
it correctly without deleting the other fields. Node 2, however, sets the value of cat_s to
be "{set=999}".

I've hacked a solution by forcing all update requests to use getUpdatedDocument(), but I'm
not clear what other effects this may have.

I'm not sure what the correct solution should be, but I'm willing to try to patch it.


                
> atomic updates do not distribute correctly to other nodes
> ---------------------------------------------------------
>
>                 Key: SOLR-3831
>                 URL: https://issues.apache.org/jira/browse/SOLR-3831
>             Project: Solr
>          Issue Type: Bug
>          Components: SolrCloud
>    Affects Versions: 4.0-BETA
>         Environment: linux
>            Reporter: Jim Musil
>
> After setting up two independent solr nodes using the SolrCloud tutorial, atomic updates
to a field of type "payloads" gives an error when updating the destination node.
> The error is:
> SEVERE: java.lang.NumberFormatException: For input string: "100}"
> The input sent to the first node is in the expected default format for a payload field
(eg "foo|100") and that update succeeds. I've found that the update always works for the first
node, but never the second.
> I've tested each server running independently and found that this update works as expected.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org


Mime
View raw message