[ 
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

        

Reply via email to