wirybeaver commented on PR #12532: URL: https://github.com/apache/pinot/pull/12532#issuecomment-2011038519
Just paste my previous suggestion from the slack discussion so that other reviews can understand how we get here: > Previously, I thought Saurabh wants to support non leaf json path. It turns out we are aiming to do the same thing except the execution order. I planed to support json path containing array index and then support array return type whereas Saurabh wants to support array type first (maybe array index later?) > > I think it’s better to wait for my PR 12466 get merged since my PR considers to process arrayIndex. Take the example below, if the json path is "$.[1][0].value", then just finding the key with prefix "…value<0000>" doesn’t work. We need more steps to get the value belonging to [1][0], i.e., intersecting with the roaringBitmap of .$index, .$index<0000>1 and ..$index<0000>0 > And then Saurahb can work on the Regexpr predicate and Array type. I am good to take over the Array type is Saurahb doesn’t have bandwidth. I suggest that the array return type and Regexp should be splitted into two PRs. ``` "[[{\"value\":1}, {\"value\":2}], [{\"value\":1}, {\"value\":4}]]" ``` <a href="https://imgur.com/hxOUWUK"><img src="https://i.imgur.com/hxOUWUK.png?1" title="source: imgur.com" style="width: 100px; height: auto;" /></a> > "$.[*][0].value" should return [1, 1] , am I correct? If so, in order to support array as return type, getMatchingDocsMap(String key) should have return FlattendDocIds rather than the original DocIds to allow duplication elements as Saurahb does in their PR. At the moment, the getMatchingDocsMap returing original DocsIds is fine since the return type is just SV (no duplication since it’s SV). -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org For additional commands, e-mail: commits-h...@pinot.apache.org