On a 3 table join where MySQL predicts rows for each table to be 10-2-1 (tables A-B-C; type index-ref-eq_ref) the total rows produced is the product of these values, 20.
However, isn't the number of rows read (i.e., individual rows fetched by MySQL to construct the joined rows) 50: 10 from table A, plus 2 for each of these 10, plus 1 for each of combination of B and A?
Regarding eq_ref for example the manual says "One row will be read from this table for each combination of rows from the previous tables." I took 'each combination ...' to mean like A1-B1, A1-B2, A1-B3, etc. ?