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 2012/04/21 00:01:24 UTC
svn commit: r1328524 - in /pig/trunk: CHANGES.txt
src/org/apache/pig/scripting/jython/JythonUtils.java
test/e2e/pig/tests/nightly.conf
Author: daijy
Date: Fri Apr 20 22:01:24 2012
New Revision: 1328524
URL: http://svn.apache.org/viewvc?rev=1328524&view=rev
Log:
PIG-2596: Jython UDF does not handle boolean output
Modified:
pig/trunk/CHANGES.txt
pig/trunk/src/org/apache/pig/scripting/jython/JythonUtils.java
pig/trunk/test/e2e/pig/tests/nightly.conf
Modified: pig/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/pig/trunk/CHANGES.txt?rev=1328524&r1=1328523&r2=1328524&view=diff
==============================================================================
--- pig/trunk/CHANGES.txt (original)
+++ pig/trunk/CHANGES.txt Fri Apr 20 22:01:24 2012
@@ -106,6 +106,8 @@ OPTIMIZATIONS
BUG FIXES
+PIG-2596: Jython UDF does not handle boolean output (aniket486 via daijy)
+
PIG-2652: Skew join and order by don't trigger reducer estimation (billgraham via dvryaboy)
PIG-2649: org.apache.pig.parser.ParserValidationException does not expose the cause exception
Modified: pig/trunk/src/org/apache/pig/scripting/jython/JythonUtils.java
URL: http://svn.apache.org/viewvc/pig/trunk/src/org/apache/pig/scripting/jython/JythonUtils.java?rev=1328524&r1=1328523&r2=1328524&view=diff
==============================================================================
--- pig/trunk/src/org/apache/pig/scripting/jython/JythonUtils.java (original)
+++ pig/trunk/src/org/apache/pig/scripting/jython/JythonUtils.java Fri Apr 20 22:01:24 2012
@@ -30,6 +30,7 @@ import org.apache.pig.data.DefaultBagFac
import org.apache.pig.data.Tuple;
import org.apache.pig.data.TupleFactory;
import org.python.core.Py;
+import org.python.core.PyBoolean;
import org.python.core.PyDictionary;
import org.python.core.PyFloat;
import org.python.core.PyInteger;
@@ -82,6 +83,8 @@ public class JythonUtils {
javaObj = newMap;
} else if (pyObject instanceof PyLong) {
javaObj = pyObject.__tojava__(Long.class);
+ } else if (pyObject instanceof PyBoolean) {
+ javaObj = pyObject.__tojava__(Boolean.class);
} else if (pyObject instanceof PyInteger) {
javaObj = pyObject.__tojava__(Integer.class);
} else if (pyObject instanceof PyFloat) {
Modified: pig/trunk/test/e2e/pig/tests/nightly.conf
URL: http://svn.apache.org/viewvc/pig/trunk/test/e2e/pig/tests/nightly.conf?rev=1328524&r1=1328523&r2=1328524&view=diff
==============================================================================
--- pig/trunk/test/e2e/pig/tests/nightly.conf (original)
+++ pig/trunk/test/e2e/pig/tests/nightly.conf Fri Apr 20 22:01:24 2012
@@ -3421,7 +3421,6 @@ store b into ':OUTPATH:';\,
{
# test that functions with same names resolve correctly across name spaces
'num' => 11,
- 'ignore' => 1, # PIG-2596
'pig' => q\
register ':SCRIPTHOMEPATH:/python/scriptingudf.py' using jython as myfuncs;
a = load ':INPATH:/singlefile/studenttab10k' as (name:chararray, age:int, gpa:double);
@@ -3429,7 +3428,7 @@ b = foreach a generate name, myfuncs.isr
store b into ':OUTPATH:';\,
'verify_pig_script' => q\
a = load ':INPATH:/singlefile/studenttab10k' using PigStorage() as (name:chararray, age:int, gpa:double);
-b = foreach a generate name, (age>=60?1:0);
+b = foreach a generate name, (age>=60?'true':'false');
store b into ':OUTPATH:';\,
}
]