Author: daijy
Date: Wed Feb 25 01:45:10 2015
New Revision: 1662159

URL: http://svn.apache.org/r1662159
Log:
PIG-4397: CSVExcelStorage incorrect output if last field value is null

Modified:
    pig/trunk/CHANGES.txt
    
pig/trunk/contrib/piggybank/java/src/main/java/org/apache/pig/piggybank/storage/CSVExcelStorage.java
    
pig/trunk/contrib/piggybank/java/src/test/java/org/apache/pig/piggybank/test/storage/TestCSVExcelStorage.java

Modified: pig/trunk/CHANGES.txt
URL: 
http://svn.apache.org/viewvc/pig/trunk/CHANGES.txt?rev=1662159&r1=1662158&r2=1662159&view=diff
==============================================================================
--- pig/trunk/CHANGES.txt (original)
+++ pig/trunk/CHANGES.txt Wed Feb 25 01:45:10 2015
@@ -50,6 +50,8 @@ PIG-4333: Split BigData tests into multi
  
 BUG FIXES
 
+PIG-4397: CSVExcelStorage incorrect output if last field value is null (daijy)
+
 PIG-4431: ReadToEndLoader does not close the record reader for the last input 
split (rdsr via daijy)
 
 PIG-4426: RowNumber(simple) Rank not producing correct results (knoguchi)

Modified: 
pig/trunk/contrib/piggybank/java/src/main/java/org/apache/pig/piggybank/storage/CSVExcelStorage.java
URL: 
http://svn.apache.org/viewvc/pig/trunk/contrib/piggybank/java/src/main/java/org/apache/pig/piggybank/storage/CSVExcelStorage.java?rev=1662159&r1=1662158&r2=1662159&view=diff
==============================================================================
--- 
pig/trunk/contrib/piggybank/java/src/main/java/org/apache/pig/piggybank/storage/CSVExcelStorage.java
 (original)
+++ 
pig/trunk/contrib/piggybank/java/src/main/java/org/apache/pig/piggybank/storage/CSVExcelStorage.java
 Wed Feb 25 01:45:10 2015
@@ -305,6 +305,7 @@ public class CSVExcelStorage extends Pig
 
             // Substitute a null value with an empty string. See PIG-2470.
             if (field == null) {
+                fieldStr = null;
                 mProtoTuple.add("");
                 continue;
             }

Modified: 
pig/trunk/contrib/piggybank/java/src/test/java/org/apache/pig/piggybank/test/storage/TestCSVExcelStorage.java
URL: 
http://svn.apache.org/viewvc/pig/trunk/contrib/piggybank/java/src/test/java/org/apache/pig/piggybank/test/storage/TestCSVExcelStorage.java?rev=1662159&r1=1662158&r2=1662159&view=diff
==============================================================================
--- 
pig/trunk/contrib/piggybank/java/src/test/java/org/apache/pig/piggybank/test/storage/TestCSVExcelStorage.java
 (original)
+++ 
pig/trunk/contrib/piggybank/java/src/test/java/org/apache/pig/piggybank/test/storage/TestCSVExcelStorage.java
 Wed Feb 25 01:45:10 2015
@@ -71,7 +71,7 @@ public class TestCSVExcelStorage  {
             "\"Mac \"\"the knife\"\"\",Cohen,30",
             "\"Conrad\nEmil\",Dinger,40",
                 "Emil,\"\nDinger\",40",
-                "Quote problem,\"My \"\"famous\"\"\nsong\",60",
+                "Quote problem,\"My \"\"famous\"\"\nsong\",",
             "1st Field,\"A poem that continues\nfor several lines\ndo 
we\n(even with \r)handle that?\",Good,Fairy",
     };
 
@@ -85,7 +85,7 @@ public class TestCSVExcelStorage  {
             add(Util.createTuple(new String[] {"Mac \"the knife\"", "Cohen", 
"30"}));
             add(Util.createTuple(new String[] {"Conrad\nEmil", "Dinger", 
"40"}));
             add(Util.createTuple(new String[] {"Emil", "\nDinger", "40"}));
-            add(Util.createTuple(new String[] {"Quote problem", "My 
\"famous\"\nsong", "60"}));
+            add(Util.createTuple(new String[] {"Quote problem", "My 
\"famous\"\nsong", ""}));
             add(Util.createTuple(new String[] {"1st Field", "A poem that 
continues\nfor several lines\ndo we\n(even with \n)handle that?", "Good", 
"Fairy"}));
         }
     };
@@ -103,7 +103,7 @@ public class TestCSVExcelStorage  {
             add(Util.createTuple(new String[] {"Emil"}));
             add(Util.createTuple(new String[] {"Dinger,40"}));  // Trailing 
double quote after Emil eats rest of line
             add(Util.createTuple(new String[] {"Quote problem", "My 
\"famous\""}));
-            add(Util.createTuple(new String[] {"song,60"}));
+            add(Util.createTuple(new String[] {"song,"}));
             add(Util.createTuple(new String[] {"1st Field", "A poem that 
continues"}));
             add(Util.createTuple(new String[] {"for several lines"}));
             add(Util.createTuple(new String[] {"do we"}));


Reply via email to