svn commit: r992977 - in /hadoop/pig/trunk: .eclipse.templates/.classpath CHANGES.txt

2010-09-06 Thread zjffdu
Author: zjffdu
Date: Mon Sep  6 09:13:43 2010
New Revision: 992977

URL: http://svn.apache.org/viewvc?rev=992977view=rev
Log:
PIG-1602: The .classpath of eclipse template still use hbase-0.20.0 (zjffdu)

Modified:
hadoop/pig/trunk/.eclipse.templates/.classpath
hadoop/pig/trunk/CHANGES.txt

Modified: hadoop/pig/trunk/.eclipse.templates/.classpath
URL: 
http://svn.apache.org/viewvc/hadoop/pig/trunk/.eclipse.templates/.classpath?rev=992977r1=992976r2=992977view=diff
==
--- hadoop/pig/trunk/.eclipse.templates/.classpath (original)
+++ hadoop/pig/trunk/.eclipse.templates/.classpath Mon Sep  6 09:13:43 2010
@@ -15,8 +15,8 @@
classpathentry exported=true kind=lib 
path=build/ivy/lib/Pig/joda-time-1.6.jar/
classpathentry exported=true kind=lib 
path=build/ivy/lib/Pig/jsch-0.1.38.jar/
classpathentry exported=true kind=lib 
path=build/ivy/lib/Pig/junit-4.5.jar/
-   classpathentry exported=true kind=lib path=lib/hbase-0.20.0.jar/
-   classpathentry exported=true kind=lib 
path=lib/hbase-0.20.0-test.jar/
+   classpathentry exported=true kind=lib path=lib/hbase-0.20.6.jar/
+   classpathentry exported=true kind=lib 
path=lib/hbase-0.20.6-test.jar/
classpathentry exported=true kind=lib 
path=lib/zookeeper-hbase-1329.jar/
classpathentry exported=true kind=lib 
path=build/ivy/lib/Pig/guava-r06.jar/
classpathentry exported=true kind=lib 
path=build/ivy/lib/Pig/jython-2.5.0.jar/

Modified: hadoop/pig/trunk/CHANGES.txt
URL: 
http://svn.apache.org/viewvc/hadoop/pig/trunk/CHANGES.txt?rev=992977r1=992976r2=992977view=diff
==
--- hadoop/pig/trunk/CHANGES.txt (original)
+++ hadoop/pig/trunk/CHANGES.txt Mon Sep  6 09:13:43 2010
@@ -197,6 +197,8 @@ PIG-1309: Map-side Cogroup (ashutoshc)
 
 BUG FIXES
 
+PIG-1602: The .classpath of eclipse template still use hbase-0.20.0 (zjffdu)
+
 PIG-1596: NPE's thrown when attempting to load hbase columns containing null 
values (zjffdu)
 
 PIG-1597: Development snapshot jar no longer picked up by bin/pig (dvryaboy)




svn commit: r993156 - in /hadoop/pig/branches/branch-0.8: src/org/apache/pig/newplan/logical/ src/org/apache/pig/newplan/logical/relational/ src/org/apache/pig/newplan/logical/rules/ src/org/apache/pi

2010-09-06 Thread daijy
Author: daijy
Date: Mon Sep  6 21:16:18 2010
New Revision: 993156

URL: http://svn.apache.org/viewvc?rev=993156view=rev
Log:
PIG-1178: LogicalPlan and Optimizer are too complex and hard to work with 
(PIG-1178-10.patch)

Modified:

hadoop/pig/branches/branch-0.8/src/org/apache/pig/newplan/logical/LogicalPlanMigrationVistor.java

hadoop/pig/branches/branch-0.8/src/org/apache/pig/newplan/logical/relational/LOGenerate.java

hadoop/pig/branches/branch-0.8/src/org/apache/pig/newplan/logical/relational/LOUnion.java

hadoop/pig/branches/branch-0.8/src/org/apache/pig/newplan/logical/relational/LogicalSchema.java

hadoop/pig/branches/branch-0.8/src/org/apache/pig/newplan/logical/rules/ColumnPruneHelper.java

hadoop/pig/branches/branch-0.8/src/org/apache/pig/newplan/logical/rules/ColumnPruneVisitor.java

hadoop/pig/branches/branch-0.8/src/org/apache/pig/newplan/optimizer/PlanOptimizer.java

hadoop/pig/branches/branch-0.8/test/org/apache/pig/test/TestNewPlanLogToPhyTranslationVisitor.java

Modified: 
hadoop/pig/branches/branch-0.8/src/org/apache/pig/newplan/logical/LogicalPlanMigrationVistor.java
URL: 
http://svn.apache.org/viewvc/hadoop/pig/branches/branch-0.8/src/org/apache/pig/newplan/logical/LogicalPlanMigrationVistor.java?rev=993156r1=993155r2=993156view=diff
==
--- 
hadoop/pig/branches/branch-0.8/src/org/apache/pig/newplan/logical/LogicalPlanMigrationVistor.java
 (original)
+++ 
hadoop/pig/branches/branch-0.8/src/org/apache/pig/newplan/logical/LogicalPlanMigrationVistor.java
 Mon Sep  6 21:16:18 2010
@@ -45,6 +45,7 @@ import org.apache.pig.impl.logicalLayer.
 import org.apache.pig.impl.logicalLayer.LogicalPlan;
 import org.apache.pig.impl.logicalLayer.LOCogroup.GROUPTYPE;
 import org.apache.pig.impl.logicalLayer.LOJoin.JOINTYPE;
+import org.apache.pig.impl.logicalLayer.schema.Schema;
 import org.apache.pig.impl.plan.DependencyOrderWalker;
 import org.apache.pig.impl.plan.PlanWalker;
 import org.apache.pig.impl.plan.VisitorException;
@@ -209,6 +210,13 @@ public class LogicalPlanMigrationVistor 
 org.apache.pig.newplan.logical.relational.LOGenerate gen = 
 new 
org.apache.pig.newplan.logical.relational.LOGenerate(innerPlan, expPlans, flat);
 
+if (forEach.getUserDefinedSchema()!=null) {
+ListLogicalSchema userDefinedSchema = new 
ArrayListLogicalSchema();
+for (Schema schema : forEach.getUserDefinedSchema()) {
+userDefinedSchema.add(Util.translateSchema(schema));
+}
+gen.setUserDefinedSchema(userDefinedSchema);
+}
 innerPlan.add(gen);
 
 ListLogicalPlan ll = forEach.getForEachPlans();

Modified: 
hadoop/pig/branches/branch-0.8/src/org/apache/pig/newplan/logical/relational/LOGenerate.java
URL: 
http://svn.apache.org/viewvc/hadoop/pig/branches/branch-0.8/src/org/apache/pig/newplan/logical/relational/LOGenerate.java?rev=993156r1=993155r2=993156view=diff
==
--- 
hadoop/pig/branches/branch-0.8/src/org/apache/pig/newplan/logical/relational/LOGenerate.java
 (original)
+++ 
hadoop/pig/branches/branch-0.8/src/org/apache/pig/newplan/logical/relational/LOGenerate.java
 Mon Sep  6 21:16:18 2010
@@ -33,6 +33,12 @@ import org.apache.pig.newplan.logical.re
 public class LOGenerate extends LogicalRelationalOperator {
  private ListLogicalExpressionPlan outputPlans;
  private boolean[] flattenFlags;
+ private ListLogicalSchema mUserDefinedSchema = null;
+ private ListLogicalSchema outputPlanSchemas = null;
+ // If LOGenerate generate new uid, cache it here.
+ // This happens when expression plan does not have complete schema, 
however,
+ // user give complete schema in ForEach statement in script
+ private ListLogicalSchema uidOnlySchemas = null;
 
 public LOGenerate(OperatorPlan plan, ListLogicalExpressionPlan ps, 
boolean[] flatten) {
 super(LOGenerate, plan);
@@ -46,60 +52,130 @@ public class LOGenerate extends LogicalR
 return schema;
 }
 
+if (uidOnlySchemas == null) {
+uidOnlySchemas = new ArrayListLogicalSchema();
+for (int i=0;ioutputPlans.size();i++)
+uidOnlySchemas.add(null);
+}
+
 schema = new LogicalSchema();
+outputPlanSchemas = new ArrayListLogicalSchema();
 
 for(int i=0; ioutputPlans.size(); i++) {
 LogicalExpression exp = 
(LogicalExpression)outputPlans.get(i).getSources().get(0);
 
-LogicalFieldSchema fieldSchema = null;
-if (exp.getFieldSchema()==null) {
-schema = null;
-break;
+LogicalSchema mUserDefinedSchemaCopy = null;
+if (mUserDefinedSchema!=null  mUserDefinedSchema.get(i)!=null) {
+