[
https://issues.apache.org/jira/browse/PIG-255?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12605938#action_12605938
]
Pi Song commented on PIG-255:
-----------------------------
The information you mentioned can get derived at runtime after parsing stage
just right before execution. We can build a small framework to allow passing
parameters between plan operators.
> Calling non default constructor of Final class from Main class in UDF
> ---------------------------------------------------------------------
>
> Key: PIG-255
> URL: https://issues.apache.org/jira/browse/PIG-255
> Project: Pig
> Issue Type: Improvement
> Reporter: Ajay Garg
> Priority: Minor
> Attachments: cons.patch, test.patch
>
>
> Pig supports the use of define to call a non default constructor. Making it
> work across Algebraic functions is not possible with the current code. The
> problem is once the func is defined to use a non default constructor which
> takes in names of the variables, we have no way of transmitting this
> information from the main class to the final class. We tried passing the func
> spec through the call to getFinal(). That is, What ever names we get in the
> main class we store it and when the getFinal method is called, instead of
> just passing the name of the Final class we attach the string args received
> by the main class to the name to construct a func spec. For ex. if define COV
> = Covariance('Population', 'Height'); Then we would have the "Population' &
> 'Height' stored in the main class. A call to getFinal would return
> Covariance$Final("Population", "Height") instead of just Covariance$Final. I
> guess this is the right way to go. However, pig has a problem with this. The
> resolveClassName method doesn't think of its args as specs and assumes them
> to be just names. So in createJar, when the func spec,
> Covariance$Final("Population", "Height") is being resolved it fails. I think
> this is an issue with pig and we need to resolve it by clipping the args
> before doing a resolveClassName.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.