[
https://issues.apache.org/jira/browse/SOLR-15705?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17433405#comment-17433405
]
Ishan Chattopadhyaya edited comment on SOLR-15705 at 10/24/21, 6:46 AM:
------------------------------------------------------------------------
I put : instead of ! in the ids for compositeId example. I'll redo the test now
and report back. Sorry for the confusion.
Edit: Repeated the test for compositeId routing and nothing changed. Same
behaviour: the documents are getting deleted without passing in {{_route_}}
param, even when sent to the wrong shard leader.
was (Author: ichattopadhyaya):
I put : instead of ! in the ids for compositeId example. I'll redo the test now
and report back. Sorry for the confusion.
> Distribute a DeleteById to all shards when using the CompositeId router with
> a router field defined and field value is missing in request
> -----------------------------------------------------------------------------------------------------------------------------------------
>
> Key: SOLR-15705
> URL: https://issues.apache.org/jira/browse/SOLR-15705
> Project: Solr
> Issue Type: Improvement
> Security Level: Public(Default Security Level. Issues are Public)
> Components: SolrCloud
> Reporter: Michael Kosten
> Assignee: David Eric Pugh
> Priority: Major
> Time Spent: 40m
> Remaining Estimate: 0h
>
> When issuing a DeleteById command for a collection using the CompositeId
> router with a router field defined and the route value is missing from the
> request, the DeleteById fails silently, even if it happens to have been sent
> to the correct shard. Instead of failing silently, the request could be
> forwarded to all shard leaders and from there to all replicas. Another
> required change is that the deletion would need to be performed even though
> the route value is missing. The deletion would be a no-op on the shards where
> the document does not exist.
> One use case for this feature is when the routing key value is volatile and
> you need to guarantee no duplicates exist when updating a document if it
> happens to change shards. Another use case is if you want to delete a
> document without referencing a database to retrieve the route field value.
> A work-around is to use a DeleteByQuery. However, my testing has found that
> DeleteById performs significantly better, even when sent to all shards.
> Additionally, I've found that a heavy mixed load of DeleteByQuery commands
> and Add commands can lead to node failures when there are multiple replicas.
> Additional comments are in SOLR-6910, however, that JIRA is specific to the
> implicit router and I mistakenly added them there.
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]