Early termination of hash joins when possible

If the LHS of the HashJoin is empty or the probe table that is built (in order to execute the hash join)
is empty, we terminate immediately; i.e. no further processing occurs
Merge pull request #3443 from petraselmer/hash-join-abort

Early termination of hash joins when possible