Hello,

Thank You very much for Your feedback!

I completed the outer joins to inner joins rewriting part and I plan to follow 
Your advice and move the rewriting methods to LogicalOptimizer.
The new processing is described in 
https://sites.google.com/site/gsoc2013tajo34/home/validation , where I also 
uploaded the source code as files.

1)  I think that the allTables data structure as well as the validateOuterJoin 
and recursiveWhere methods should remain in class QueryAnalyzer, as they belong 
to the stage where the query is analyzed and validated. 
In my opinion, only methods rewriteOuterJoin, 
recursiveRewriteMultiNullSupplier, recursiveRewriteNullRestricted should be 
moved to class LogicalOptimizer as they perform optimizations on the logical 
plan.
What do You think about this?

2) I would like to kindly ask You how can I continually rebase my work on the 
latest Tajo version, "rebase continually your work on updated source code"?
Usually I issue this command:

mvn package -DskipTests -Pdist -Dtar

What should I do before this?

3) I read on the mailing lists that the Tajo Cli changed and was improved. But 
besides the query acceptance, does this affect in any way the stages of the 
query processing, after its parsing?

4) Also, I read some posts on the mailing list related to integration tests.
Where can I find these and how should I use them in order to verify that my 
work integrates well with the rest of the source code?

My work so far only affects queries containing at least one outer join, so for 
queries consisting only of inner joins no modification is made.

As a final remark, it was easier to manage the recursion without EvalTreeUtil. 
Hope it's ok.


Thank You in advance!

Yours  sincerely,
Camelia



 

Reply via email to