[ https://issues.apache.org/jira/browse/SOLR-11990?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16442366#comment-16442366 ]
Noble Paul commented on SOLR-11990: ----------------------------------- The ideal syntax for such a feature would be {code:java} //place all replicas of collection 'comment' where collection 'article' is present {"replica" :"#ALL", "collection" : "comment", "withCollection" :"article" } {code} With this feature * we expect the collection {{"article"}} to be created first. If {{"article"}} is not present creation of collection {{"comment"}} must fail * The collection {{"article"}} must have only one shard * when {{"comments"}} collection is created, it must first identify nodes where replicas are going to be created, and then it must go on and create replicas of {{"article"}} in all those nodes * When a new replica (or a shard) is created for {{"comment"}} , it must do the same as create collection I seriously think it is a lot of work . We will have to change the way the collection APIs work. The way the rules are computed in the Policy framework also needs to change specifically for this use case. The APIs are not written to handle multiple collections simultaneously. I think it will be much easier if we just make this as a collection attribute and deal it specially there. That way, we don't have to touch the Policy framework at all > Make it possible to co-locate replicas of multiple collections together in a > node using policy > ---------------------------------------------------------------------------------------------- > > Key: SOLR-11990 > URL: https://issues.apache.org/jira/browse/SOLR-11990 > Project: Solr > Issue Type: Sub-task > Security Level: Public(Default Security Level. Issues are Public) > Components: AutoScaling, SolrCloud > Reporter: Shalin Shekhar Mangar > Assignee: Shalin Shekhar Mangar > Priority: Major > Fix For: 7.4, master (8.0) > > Attachments: SOLR-11990.patch, SOLR-11990.patch > > > It is necessary to co-locate replicas of different collection together in a > node when cross-collection joins are performed. The policy rules framework > should support this use-case. > Example: Co-locate exactly 1 replica of collection A in each node where a > replica of collection B is present. > {code} > {"replica":">0", "collection":"A", "shard":"#EACH", "withCollection":"B"} > {code} > This requires changing create collection, create shard and add replica APIs > as well because we want a replica of collection A to be created first before > a replica of collection B is created so that join queries etc are always > possible. -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org