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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]