Inline agg

This is part 1: Serial Inline aggregation contain table agg and group by agg with index.

Waiting for Jenkins.

Actually, I took my option back. The more I think, the more I do not see this as a performance problem, compared to the one without inline aggregation. We used to copy all the potential matched values into a temp table feeding agg. 

Yes. this code will copy the only columns that have been used in the group by columns, that including the pass through columns. 

The reason that we have to allocate space for the tuple (the optimal case: only the pass through columns) is that we can not store a reference of the input tuple for agg executor any more. Because the caller will reuse that tuple for next input tuple. This will potentially change our m_passThroughTuple value. 

This problem almost killed me last night until I finally figured it out.