1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-08 11:22:35 +03:00

MDEV-26901: Estimation for filtered rows less precise ... #4

In Histogram_json_hb::point_selectivity(), do return selectivity of 0.0
when the histogram says so.

The logic of "Do not return 0.0 estimate as it causes a multiply-by-zero
meltdown in cost and cardinality calculations" is moved into
records_in_column_ranges() where it is one *once* per column pair (as
opposed to doing once per range, which can cause the error to add-up
to large number when there are many ranges)
This commit is contained in:
Sergei Petrunia
2022-01-11 17:09:55 +03:00
parent db8f15be93
commit dae20dde4e
6 changed files with 42 additions and 6 deletions

View File

@@ -921,7 +921,7 @@ double Histogram_json_hb::point_selectivity(Field *field, key_range *endpoint,
The bucket has a single value and it doesn't match! Return a very
small value.
*/
sel= 1.0 / total_rows;
sel= 0.0;
}
else
{