On 17 March 2018 at 18:40, Tomas Vondra <tomas.von...@2ndquadrant.com> wrote: > Currently, analyze_mcv_list only checks if the frequency of the current > item is significantly higher than the non-MCV selectivity. My question > is if it shouldn't also consider if removing the item from MCV would not > increase the non-MCV selectivity too much. >
Oh, I see what you're saying. In theory, each MCV item we remove is not significantly more common than the non-MCV items at that point, so removing it shouldn't significantly increase the non-MCV selectivity. It's possible the cumulative effect of removing multiple items might start to add up, but I think it would necessarily be a slow effect, and I think it would keep getting slower and slower as more items are removed -- isn't this equivalent to constructing a sequence of numbers where each number is a little greater than the average of all the preceding numbers, and ends up virtually flat-lining. Regards, Dean