[ 
https://issues.apache.org/jira/browse/PIG-3568?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13821904#comment-13821904
 ] 

Daniel Dai commented on PIG-3568:
---------------------------------

I think #2 is also fine. We do use it to signal a tuple need to be skipped in 
POForEach (which wrongly changed by PIG-3060, PIG-3570 roll it back). 

However, when we use STATUS_NULL to signal a skip tuple, STATUS_NULL need to go 
through the rest of pipeline. We might consider to contain STATUS_NULL in the 
operator in the future.

> Define the semantics of POStatus.STATUS_NULL
> --------------------------------------------
>
>                 Key: PIG-3568
>                 URL: https://issues.apache.org/jira/browse/PIG-3568
>             Project: Pig
>          Issue Type: Bug
>            Reporter: Mark Wagner
>            Assignee: Mark Wagner
>
> The meaning of POStatus.STATUS_NULL is not well documented and there are 
> conflicting view points on its interpretation. The two interpretations are:
> 1. POStatus.STATUS_NULL indicates that the pulled output IS null. This is 
> mostly found in expression operators, particularly comparison operators.
> 2. POStatus.STATUS_NULL indicates that the pull did not produce any output. 
> This is backed up by its usage in POPackage (not JoinPackage) for flattening 
> an empty bag, and PigGenericMapBase where pulls on the operator pipeline that 
> result in STATUS_NULL are discarded.
> I propose that 2 should be the official definition going forward. The first 
> meaning is easily indicated by (null, STATUS_OK) and all the relational 
> operators already seem to follow 2. I'd like to hear others' opinions as well 
> though.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to