I have fixed issues 1 through 3.
Regarding point 4: your approach, if I understood it correctly, will only build
the dataflow information, but not the dataguide itself. To compute it, it would
require an additional pass through the expression tree and an additional data
Regarding the copying in the current code -- first of all, the expr class has a
dataguide_cb_t which is only an rchandle, so most of copying you see is just
copying of pointers. In cases where data from json "sources" cannot reach
expressions, just NULL pointers are propagated.
The operation that is costly in the current code is the cloning of dataguides,
which is done in a clone-on-modify fashion. That portion could be improved
through saving only incremental information instead of cloning and modifying an
Your team Zorba Coders is subscribed to branch lp:zorba.
Mailing list: https://launchpad.net/~zorba-coders
Post to : email@example.com
Unsubscribe : https://launchpad.net/~zorba-coders
More help : https://help.launchpad.net/ListHelp