The resourcing should hoist any subquery that contains a no_dataset_from_transform

Description

The following code in hqlresource.cpp(~720) can cause problems:

//Generally this appears to be better to hoist since it involves calling a transform. if (ds->getOperator() == no_dataset_from_transform) return true; if (canProcessInline(NULL, ds)) return false;

In particular, count(f(inline)) is not hoisted, but the inline dataset will be hoisted, leading to inefficient spilling.

Found when investigating https://hpccsystems.atlassian.net/browse/HPCC-12527#icft=HPCC-12527

Conclusion

None

Activity

Show:
Fixed
Pinned fields
Click on the next to a field label to start pinning.

Details

Components

Assignee

Reporter

Priority

Fix versions

Created September 29, 2016 at 10:31 AM
Updated April 5, 2017 at 11:34 AM
Resolved April 5, 2017 at 11:34 AM