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

Noble Paul commented on SOLR-7247:
----------------------------------

bq.IMO this is anti-user convenience if they are unknowingly led down a path 
that will result in worse performance. I would never recommend them doing so if 
they had a choice. Would you?

I would say you are being paranoid.

Let's take the case of anyone who would like to partition their data. realtime 
get is not the most common request that is sent to Solr. They are search 
queries. So, whether you use composite id or router.field , you MUST use the 
\_route_ param to be efficient. So , they are already aware of the fact that 
they would need to pass extra information to route their request properly. When 
it comes to realtime get , we don't have the support in place and we should add 
them.



> sliceHash for compositeIdRouter is not coherent with routing
> ------------------------------------------------------------
>
>                 Key: SOLR-7247
>                 URL: https://issues.apache.org/jira/browse/SOLR-7247
>             Project: Solr
>          Issue Type: Bug
>    Affects Versions: 4.10.3
>            Reporter: Paolo Cappuccini
>            Assignee: Noble Paul
>
> in CompositeIdRouter the function sliceHash check routeField configured for 
> collection.
> This make me to guess that intended behaviour is manage alternative field to  
> id field to hash documents.
> But the signature of this method is very general ( can take id, doc or 
> params) and it is used in different ways from different functionality.
> In my opinion it should have overloads instead of a weak internal logic. One 
> overload with "doc" and "collection" and another one with "id" , "params" and 
> "collections".
> In any case , if "\_route_" is not available by "params" , "collection" 
> should be mandatory and in case of RouteField, also "doc" should be mandatory.
> This will break SplitIndex but it will save coherence of data.
> If i configure routeField i noticed that is broken the DeleteCommand (this 
> pass to sliceHash only "id" and "params" ) and SolrIndexSplitter ( this pass 
> only "id" )
> It should be forbidden to specify RouteField to compositeIdRouter or 
> implements related functionality to make possible to hash documents based on 
> RouteField.
> in case of DeleteCommand command the workaround is to specify "_route_" param 
> in request but in case of Index Splitting is not possible any workaround.
> In this case it should be passed entire document during splitting ("doc" 
> parameter") or build params with proper "\_route_" parameter.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to