new ColumnAliasConversionVisitor( plan ).visit();
// new ScalarVisitor( plan, pigContext ).visit();
CompilationMessageCollector collector = new CompilationMessageCollector();
new TypeCheckingRelVisitor( plan, collector).visit();
new UnionOnSchemaSetter( plan ).visit();
new CastLineageSetter(plan, collector).visit();
printMessageCollector(collector);
plan.explain(System.out, "text", true);