Hello, I have a question about solrCloud joining. i knew solrCloud joining can do join only when index is not splited to shards, but when i test it, i found a problem which make me confused.
i tested it on version 8.2 assuming i have 2 collections like sample about "joining" on solr offcial website, one collection called "movies", another called "movieDirectors". movies's fields: id, title, director_id movieDirectors's fields: id, name, has_oscar the information of shards and replicas as below, i started two nodes on my laptop: [image: image.png] moviesDirectors have 2 docs: [image: image.png] movies also have 2 docs: [image: image.png] everything is ok when i run query with "{!join from=id fromIndex=movieDirectors to=director_id}has_oscar:true" on both 8983 and 8984, i can got expacted result: [image: image.png] but when i run "{!join from=director_id fromIndex=movies to=id}title:"Dunkirk"" on 8983 got 1 doc and if i filter by "title:Get Out", i got nothing. i understood "Get Out" is not exist in 8983. [image: image.png] [image: image.png] but question is coming, when i run "{!join from=director_id fromIndex=movies to=id}title:"Dunkirk"" on 8984, i got "SolrCloud join: multiple shards not yet supported movies" no matter what filter value is. i found following code: [image: image.png] when i run joining from movies on 8983, slice length is 2 as movies have 2 shards. "fromReplica " was assigned in second cycle, because zkController name is 8983 and replica name is 8984 in first cycle. but when run on 8984, "fromReplica" was assigned in first cycle, because zkController name isand replica name both are 8984 in first cycle, so throw "SolrCloud join: multiple shards not yet supported" in second cycle. Thanks for your patience, it's too long. i'm confused about why use this way to judge "multiple shards", because the result is also wrong running on 8983 even if didnt throw exception. why dont use slice length>1 to judge "multiple shards" ? or maybe have other better way? Please advise. Thanks in advance!