You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pig.apache.org by da...@apache.org on 2011/02/25 23:26:36 UTC

svn commit: r1074721 - in /pig/trunk: src/org/apache/pig/newplan/logical/relational/LogicalSchema.java test/org/apache/pig/test/TestSchema.java

Author: daijy
Date: Fri Feb 25 22:26:35 2011
New Revision: 1074721

URL: http://svn.apache.org/viewvc?rev=1074721&view=rev
Log:
Fix test failure caused by PIG-1536

Modified:
    pig/trunk/src/org/apache/pig/newplan/logical/relational/LogicalSchema.java
    pig/trunk/test/org/apache/pig/test/TestSchema.java

Modified: pig/trunk/src/org/apache/pig/newplan/logical/relational/LogicalSchema.java
URL: http://svn.apache.org/viewvc/pig/trunk/src/org/apache/pig/newplan/logical/relational/LogicalSchema.java?rev=1074721&r1=1074720&r2=1074721&view=diff
==============================================================================
--- pig/trunk/src/org/apache/pig/newplan/logical/relational/LogicalSchema.java (original)
+++ pig/trunk/src/org/apache/pig/newplan/logical/relational/LogicalSchema.java Fri Feb 25 22:26:35 2011
@@ -310,12 +310,16 @@ public class LogicalSchema {
                         mergedSubSchema = LogicalSchema.merge(fs1.schema, fs2.schema, MergeMode.UnionInner);
                     else {
                         // LoadForEach/LoadForEachInner
-                        try {
-                            // Only check compatibility
-                            LogicalSchema.merge(fs1.schema, fs2.schema, MergeMode.LoadForEachInner);
-                            mergedSubSchema = fs1.schema;
-                        } catch (FrontendException e) {
-                            throw new FrontendException("Incompatable field schema: left is \"" + fs1.toString(false) + "\", right is \"" + fs2.toString(false) + "\"", 1031);
+                        if (fs1.type==DataType.BYTEARRAY)
+                            mergedSubSchema = fs2.schema;
+                        else {
+                            try {
+                                // Only check compatibility
+                                LogicalSchema.merge(fs1.schema, fs2.schema, MergeMode.LoadForEachInner);
+                                mergedSubSchema = fs1.schema;
+                            } catch (FrontendException e) {
+                                throw new FrontendException("Incompatable field schema: left is \"" + fs1.toString(false) + "\", right is \"" + fs2.toString(false) + "\"", 1031);
+                            }
                         }
                     }
                 }

Modified: pig/trunk/test/org/apache/pig/test/TestSchema.java
URL: http://svn.apache.org/viewvc/pig/trunk/test/org/apache/pig/test/TestSchema.java?rev=1074721&r1=1074720&r2=1074721&view=diff
==============================================================================
--- pig/trunk/test/org/apache/pig/test/TestSchema.java (original)
+++ pig/trunk/test/org/apache/pig/test/TestSchema.java Fri Feb 25 22:26:35 2011
@@ -739,12 +739,10 @@ public class TestSchema extends TestCase
             "a1:(a11:chararray, a12:float), b1:(b11:chararray, b12:float), c1:long"));
         Assert.assertTrue(LogicalSchema.equals(mergedSchema, expected, false, false));
         
-        try {
-            LogicalSchema.merge(b, a, LogicalSchema.MergeMode.LoadForEach);
-            fail();
-        } catch (FrontendException e) {
-            assertTrue(e.getErrorCode()==1031);
-        }
+        mergedSchema = LogicalSchema.merge(b, a, LogicalSchema.MergeMode.LoadForEach);
+        expected = org.apache.pig.newplan.logical.Util.translateSchema(Util.getSchemaFromString(
+                "a2:(a11:chararray, a12:float), b2:(b21:double, b22:long), c2:chararray"));
+        Assert.assertTrue(LogicalSchema.equals(mergedSchema, expected, false, false));
     }
 
     @Test