You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pig.apache.org by "Russell Jurney (JIRA)" <ji...@apache.org> on 2012/10/05 22:40:09 UTC

[jira] [Commented] (PIG-2910) Make toString() methods on Schema and FieldSchema be readable by Utils.getSchemaFromString()

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

Russell Jurney commented on PIG-2910:
-------------------------------------

In looking at the toString code, it looked like a () was added around both bags and tuples - without checking the type. Thejas was able to reproduce and address the problem. It might be better to fix the code at the source of the issue - the toString method but... this works for me. :)
                
> Make toString() methods on Schema and FieldSchema be readable by Utils.getSchemaFromString()
> --------------------------------------------------------------------------------------------
>
>                 Key: PIG-2910
>                 URL: https://issues.apache.org/jira/browse/PIG-2910
>             Project: Pig
>          Issue Type: Bug
>          Components: impl, parser
>    Affects Versions: 0.9.2, 0.10.0, 0.11, 0.10.1
>            Reporter: Russell Jurney
>            Assignee: Thejas M Nair
>              Labels: newbie
>             Fix For: 0.11, 0.10.1
>
>         Attachments: PIG-2910-1.patch
>
>
> I want to toString() schemas and send them to the backend via UDFContext. At the moment this requires writing your own toString() method that Utils.getSchemaFromString() can read. Making a readable schema for the backend would be an improvement.
> I spoke with Thejas, who believes this is a bug. The workaround for the moment is, for example:
> String schemaString = inputSchema.toString().substring(1, inputSchema.toString().length() - 1);
> // Set the input schema for processing
> UDFContext context = UDFContext.getUDFContext();
> Properties udfProp = context.getUDFProperties(this.getClass());
> udfProp.setProperty("horton.json.udf.schema", schemaString);
> ...
> schema = Utils.getSchemaFromString(strSchema);

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira