fixbug: gpupreagg could not handle expression node of aggregate function/varref
estimate_hashtable_size() enables to break split of hash tables.

        /*
         * NOTE: In case when extreme number of rows are expected,
         * it does not make sense to split hash-tables because
         * increasion of numbatches also increases the total cost
         * by iteration of outer scan. In this case, the best
         * strategy is to give up this path, instead of incredible
         * number of numbatches!
         */
enables grafter.c to walk on subPlans