TAJO-1126: Join condition including functions throws IllegalArgumentExce...

...ption.

See https://issues.apache.org/jira/browse/TAJO-1126.

Thank you for enclosing the reproducible query and detailed bug reports.

In addition to above description, I discussed this problem with Hyoungjun in offline chat. He informed me the bug where the parameterized unit tests in TestJoin does not work. The fact that QueryUnitRequesttImpl newly creates TajoConf instance instead of taking existing TajoConf causes this bug. So, given parameters were lost during unit tests. This problem is hiding the unit test failures. As he mentioned, I could find about 20 test failures in TestJoin when I fixed this parameters loss problem.

I found the bug from PlannerUtil::isJoinQual. I improved this method to take two schemas of both relations for join, and I also enabled the method to ensure  by checking schemas if both expressions composes a join condition. As a result, all the failures in TestJoin are passed.