-
Notifications
You must be signed in to change notification settings - Fork 3.4k
Description
Currently we perform deduplication for projected json entities, i.e. if we project json entity and subsequently we also project another json entity that is "inside" the one we projected earlier, we retrieve the data for that second entity directly from the first. This allows us to save data sent over the wire, as well as reduce number of reader calls.
We could consider similar thing for scalars - if multiple scalars from the same aggregate are projected out, we could find common denominator and project that instead, and then in the shaper access the individual scalar values, like we do for entities.
This might be bit tricky however, need to change the way we translate queries (so that we keep part of the json traversal as "client eval"), also need to double check if it's a perf benefit - we would do fewer reader calls, but in many cases would bring more data over the wire.