You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pig.apache.org by ga...@apache.org on 2008/09/23 19:34:53 UTC
svn commit: r698256 - in
/incubator/pig/branches/types/src/org/apache/pig/backend/hadoop/executionengine/physicalLayer/expressionOperators:
ExpressionOperator.java POProject.java
Author: gates
Date: Tue Sep 23 10:34:53 2008
New Revision: 698256
URL: http://svn.apache.org/viewvc?rev=698256&view=rev
Log:
PIG-446 Changed POProject to emit a null when it tries to project a non-existent column instead of passing along the exception it gets.
Modified:
incubator/pig/branches/types/src/org/apache/pig/backend/hadoop/executionengine/physicalLayer/expressionOperators/ExpressionOperator.java
incubator/pig/branches/types/src/org/apache/pig/backend/hadoop/executionengine/physicalLayer/expressionOperators/POProject.java
Modified: incubator/pig/branches/types/src/org/apache/pig/backend/hadoop/executionengine/physicalLayer/expressionOperators/ExpressionOperator.java
URL: http://svn.apache.org/viewvc/incubator/pig/branches/types/src/org/apache/pig/backend/hadoop/executionengine/physicalLayer/expressionOperators/ExpressionOperator.java?rev=698256&r1=698255&r2=698256&view=diff
==============================================================================
--- incubator/pig/branches/types/src/org/apache/pig/backend/hadoop/executionengine/physicalLayer/expressionOperators/ExpressionOperator.java (original)
+++ incubator/pig/branches/types/src/org/apache/pig/backend/hadoop/executionengine/physicalLayer/expressionOperators/ExpressionOperator.java Tue Sep 23 10:34:53 2008
@@ -39,7 +39,7 @@
public abstract class ExpressionOperator extends PhysicalOperator {
private static final long serialVersionUID = 1L;
- private Log log = LogFactory.getLog(getClass());
+ protected Log log = LogFactory.getLog(getClass());
public ExpressionOperator(OperatorKey k) {
this(k,-1);
Modified: incubator/pig/branches/types/src/org/apache/pig/backend/hadoop/executionengine/physicalLayer/expressionOperators/POProject.java
URL: http://svn.apache.org/viewvc/incubator/pig/branches/types/src/org/apache/pig/backend/hadoop/executionengine/physicalLayer/expressionOperators/POProject.java?rev=698256&r1=698255&r2=698256&view=diff
==============================================================================
--- incubator/pig/branches/types/src/org/apache/pig/backend/hadoop/executionengine/physicalLayer/expressionOperators/POProject.java (original)
+++ incubator/pig/branches/types/src/org/apache/pig/backend/hadoop/executionengine/physicalLayer/expressionOperators/POProject.java Tue Sep 23 10:34:53 2008
@@ -140,12 +140,25 @@
if (star) {
return res;
} else if(columns.size() == 1) {
- ret = inpValue.get(columns.get(0));
+ try {
+ ret = inpValue.get(columns.get(0));
+ } catch (ExecException ee) {
+ log.warn("Attempt to access field " +
+ " which was not found in the input");
+ res.returnStatus = POStatus.STATUS_NULL;
+ ret = null;
+ }
} else {
ArrayList<Object> objList = new ArrayList<Object>(columns.size());
for(int i: columns) {
- objList.add(inpValue.get(i));
+ try {
+ objList.add(inpValue.get(i));
+ } catch (ExecException ee) {
+ log.warn("Attempt to access field " + i +
+ " which was not found in the input");
+ objList.add(null);
+ }
}
ret = tupleFactory.newTuple(objList);
}