WL#7338: Interface for improved records per key estimates

Affects: Server-5.7   —   Status: Complete

The optimizer uses the information in rec_per_key to estimate the number of
records to read when doing ref access. rec_per_key is currently an integer value
and for small rec_per_key values there are some undesired effects due to
rounding to nearest integer value. To fix the issue with using integer values,
this worklog will introduce a new record per key estimate that uses float as
data type. An interface that the storage engine will use for providing the
estimates and the optimizer for using the new estimates is defined. This
interface will initially be an alternative to use the current rec_per_key. If
the storage engine provides records per key estimates as float values using the
new interface, these will be used by the optimizer. If not, then the current
rec_per_key values will be used. 

This worklog implements the API and the data structures for storing records per
key estimates as float. 

User Documentation
==================

Internal code changes only. No user implications. No user documentation required.