Hi All, Our dataset is of 50M records and we are using complex graph query and now trying to do innerjoin on the records and facing the below issue . This is a critical issue .
Parent { parentId:"1" parent.name:"foo" type:"parent" } Child { childId:"2" parentId:"1" child.name:"bar" type:"child" } GrandChild { grandId:"3" childId:"2" parentId:"1" grandchild.name:"too" type:"grandchild" } innerJoin(search(collection_name, q="type:grandchild", qt="/export", fl=" grandchild.name,grandId,childId,parentId", sort="childId asc"), search(collection_name, q="type:child", qt="/export", fl="child.name,childId,parentId", sort="childId asc"), on="childId") this works and gives result { "parentId": "1", "childId": "2", "grandId: "3", "grandchild.name": "too", "child.name": "bar" } but if i try to join the parent as well with another innerjoin this gives error innerJoin( innerJoin(search(collection_name, q="type:grandchild", qt="/export", fl=" grandchild.name,grandId,childId,parentId", sort="childId asc"), search(collection_name, q="type:child", qt="/export", fl="child.name,childId,parentId", sort="childId asc"), on="childId"), search(collection_name, q="type:parent", qt="/export", fl="parent.name, parentId", sort="parentId asc"),on="parentId") ERROR { "result-set": { "docs": [ { "EXCEPTION": "Invalid JoinStream - all incoming stream comparators (sort) must be a superset of this stream's equalitor.", "EOF": true } ] } } If we change the key parentId in child doc to childParentId and similarly childId,parentId in grandchild doc to grandchildId,grandParentId then query will work but this is a big change in schema.. i also refered this issue https://issues.apache.org/jira/browse/SOLR-10512 Thanks sam