[
https://issues.apache.org/jira/browse/PIG-2344?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13228588#comment-13228588
]
Ashutosh Chauhan commented on PIG-2344:
---------------------------------------
Few problems which are related but possibly can be fixed without the redesign
are following:
Pig instantiates LF/SF 3 times in frontend and call different methods of the
interface on different objects, making it impossible to communicate states
between constructor and different methods within frontend. Illustration of this
can be found in HCatLoader which saves schema in ctor in UDFContext and
retrieves it back in frontend itself. This is a *nasty* *nasty* hack. This
problem manifest itself in other places also in HCatlog, making code in it
brittle.
Second, if these LF/SF functions do not perform idempotent actions, then they
have to workaround that too.
Third problem is some of these methods pass jobconf, but writing anything into
it is useless, since jobConf is thrown away. After making a call on interface,
Pig should save this jobconf and when instantiate a real JobConf later, should
initialize with this one.
> UDF / LoadFunc / StoreFunc should be serializable
> -------------------------------------------------
>
> Key: PIG-2344
> URL: https://issues.apache.org/jira/browse/PIG-2344
> Project: Pig
> Issue Type: Improvement
> Reporter: Ashutosh Chauhan
>
> If there is a redesign, this should be a requirement. We will get away with
> all the saving of state which got created in frontend and then recreating the
> same state in backend.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira