[
https://issues.apache.org/jira/browse/PIG-3359?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jonathan Packer updated PIG-3359:
---------------------------------
Description:
There are some gaps in the functionality of macros that I've made a patch to
address. The goal is to provide everything you'd need to make reusable
algorithms libraries.
1. You can't register udfs inside a macro
2. Paramater substitutions aren't done inside macros
3. Resources (including macros) should not be redundantly acquired if they are
already present.
Rohini's patch https://issues.apache.org/jira/browse/PIG-3204 should address
problem 3 where Pig reparses everything every time it reads a line, but there
still would be a problem if two separate files import the same macro / udf file.
To get this working, I moved methods for registering jars/udfs and param
substitution from PigServer to PigContext so they can be accessed in
QueryParserDriver which processes macros (QPD was already passed a PigContext
reference). Is that ok?
was:
There are some gaps in the functionality of macros that I'll be making a patch
to address. The goal is to provide everything you'd need to make reusable
algorithms libraries.
1. You can't register udfs inside a macro
2. Paramater substitutions aren't done inside macros
3. Resources (including macros) should not be redundantly acquired if they are
already present.
Rohini's patch https://issues.apache.org/jira/browse/PIG-3204 should address
problem 3 where Pig reparses everything every time it reads a line, but there
still would be a problem if two separate files import the same macro / udf
file.
> Register Statements and Param Substitution in Macros
> ----------------------------------------------------
>
> Key: PIG-3359
> URL: https://issues.apache.org/jira/browse/PIG-3359
> Project: Pig
> Issue Type: Bug
> Components: parser
> Reporter: Jonathan Packer
> Assignee: Jonathan Packer
> Attachments: PIG-3359_test.tar.gz, PIG-3359-v1.diff
>
>
> There are some gaps in the functionality of macros that I've made a patch to
> address. The goal is to provide everything you'd need to make reusable
> algorithms libraries.
> 1. You can't register udfs inside a macro
> 2. Paramater substitutions aren't done inside macros
> 3. Resources (including macros) should not be redundantly acquired if they
> are already present.
> Rohini's patch https://issues.apache.org/jira/browse/PIG-3204 should address
> problem 3 where Pig reparses everything every time it reads a line, but there
> still would be a problem if two separate files import the same macro / udf
> file.
> To get this working, I moved methods for registering jars/udfs and param
> substitution from PigServer to PigContext so they can be accessed in
> QueryParserDriver which processes macros (QPD was already passed a PigContext
> reference). Is that ok?
--
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