[ https://issues.apache.org/jira/browse/SOLR-5944?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14948839#comment-14948839 ]
Ishan Chattopadhyaya commented on SOLR-5944: -------------------------------------------- bq. What happens if the dependent update fails on one shard? If the dependent update (or even the out of order update) failed on a replica (isn't this what you meant by "shard"?), I think the leader will put that replica into LIR. bq. "leader threads" meaning they are on the leader? If so, this is sort of where I was going before (handling more on the leader)... except instead of detecting and waiting for the dependent update, just send the dependent update first (i.e. don't reorder). Seems easier? Hmmm, but looking at your follow-up, it sounds more like you're blocking on the replica? What I meant by "leader threads" was that since at the leader the DistributedUpdateProcessor distributes these commands to the replicas synchronously [0], the leader thread will remain blocked till the replica will not write and return success/failure. However, my intention was, as you point out, to actually do the wait/"blocking on the replica". [0] - DistributedUpdateProcessor {noformat} for (Node subShardLeader : subShardLeaders) { cmdDistrib.distribAdd(cmd, Collections.singletonList(subShardLeader), params, true); } {noformat} (the last boolean being for synchronous) bq. It certainly is beyond the scope of this ticket, but it also would solve a lot of issues. We need to continue to think about any and all approaches to make this feature bullet-proof. Totally agree. I really want to evaluate doing this, even if not immediately (unless we absolutely need it for this feature). If there is not a significant performance loss to using a single channel client to each replica, then this approach would be really very neat. bq. Will all "atomic updates" now be handled this way? Seems desirable in general. For atomic updates, as they stand today, I think sending only partial document to the replicas would help if there are lots of fields as we save the cost of sending and maybe also storage/memory space at the tlog. However, if the other stored fields require very expensive analysis, it might be better to let the leader send the full document to the replicas? Is there something else too which I missed? If we can get in-place updates to work for both numeric and binary docvalues, I think we'll get one step closer to recommending users to do all updates this way. bq. If it hasn't been done already, this could be broken out into it's own issue and fixed now? Sure, good catch. I'll create another issue for this. > 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: 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 > > > 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-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org