[ 
https://issues.apache.org/jira/browse/PIG-1841?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Laukik Chitnis updated PIG-1841:
--------------------------------

    Assignee: Daniel Dai  (was: Laukik Chitnis)
      Status: Patch Available  (was: Open)

> TupleSize implemented incorrectly
> ---------------------------------
>
>                 Key: PIG-1841
>                 URL: https://issues.apache.org/jira/browse/PIG-1841
>             Project: Pig
>          Issue Type: Bug
>    Affects Versions: 0.8.0
>            Reporter: Eric Tschetter
>            Assignee: Daniel Dai
>             Fix For: 0.9.0, 0.8.0
>
>         Attachments: PIG-1841.patch
>
>
> I sent this to the list:
> I'm looking at Pig's TupleSize implementation and wondering if it's
> implemented correctly:
>    @Override
>    public Long exec(Tuple input) throws IOException {
>        try{
>            if (input == null) return null;
>            return Long.valueOf(input.size());
>        }catch(Exception e){
>            int errCode = 2106;
>            String msg = "Error while computing size in " +
> this.getClass().getSimpleName();
>            throw new ExecException(msg, errCode, PigException.BUG,
> e);
>        }
>    }
> I have a script that looks like
> A = FOREACH A GENERATE STRSPLIT(value, '\u0001') AS values;
> B = FOREACH B GENERATE values, SIZE(values) AS cnt;
> and cnt always ends up as 1.  From the code, it looks like TupleSize
> is intended to only return the number of arguments into the SIZE()
> UDF?  Is that really the intention and I'm using the SIZE() UDF wrong?
>  Or, is it just a bug and it's supposed to be written as "return
> Long.valueOf(((Tuple) input.get(0)).size()))"?
> I got this response back:
> This is definitely a bug. Can you open a Jira ticket?
> Done!

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to