Hi,

I was looking into MDEV-383 - "Evaluate subquery predicates earlier or later depending on their SELECTIVITY" as a possible GSOC 2020 project and I have a few queries about the same. 
  1. "There are a lot of subquery conditions out there that are inexpensive to evaluate and have good selectivity." - How is the cost of a subquery predicate calculated ? 
  2. One of the assumptions in MDEV-83 was that "selectivity of a subquery predicate cannot be estimated during optimization." - what has changed since that we are looking into estimating selectivity ( or maybe my understanding of the task is incorrect so I would be grateful if you could just point me to any resources regarding this).  
  3. Igor had responded on the jira - "for starters, you could introduce an option that would allow not to push correlated subquery predicates to joined tables." - did you mean a command line argument/option and I don't get how this would help with the main task. 
  4. Also, can anyone please point me to the classes where predicate cost and join plans are evaluated ?

Apologies if the queries are a bit rudimentary. 

Regards
Tavneet