at this point the parent operators rownum is scaled according to pkfkselectivity
however pkfkselectivity is computed on a whole subtree.
Scaling it by that amount will count in estimation already used when parentstats was calculated...so depending on the number of upstream joins - this may lead to severe underestimations
what happened was:
- optimization was able to push the filter to the other side of the join
- as a result the incoming data was already filtered
- scaling down by the PK selectiviy - was actually already there...but a new "scaling" happened