Inconsistent usage of store func.
---------------------------------
Key: PIG-1684
URL: https://issues.apache.org/jira/browse/PIG-1684
Project: Pig
Issue Type: Bug
Components: impl
Affects Versions: 0.7.0
Environment:
A custom StoreFuncInterface used to store data at the reducer.
(Output of a group )
Reporter: Mridul Muralidharan
Pig seems to be using multiple instances of StoreFuncInterface in the reducer
inconsistently.
Some hadoop api calls are made to one instance and others made to other : which
makes state management very inconsistent and is requiring hacks on our part to
deal with it.
The call snippet below should hopefully indicate the issue.
The format is :
Instance.toString() method_call.
com.yahoo.psox.fish.pig.indexjoinst...@1be4777 getOutputFormat()
com.yahoo.psox.fish.pig.indexjoinst...@1be4777 getOutputCommitter
com.yahoo.psox.fish.pig.indexjoinst...@1be4777 setupTask
com.yahoo.psox.fish.pig.indexjoinst...@1be4777 init
com.yahoo.psox.fish.pig.indexjoinst...@1429cb2 getOutputFormat()
com.yahoo.psox.fish.pig.indexjoinst...@1429cb2 getRecordWriter
com.yahoo.psox.fish.pig.indexjoinst...@1429cb2 init
com.yahoo.psox.fish.pig.indexjoinst...@1429cb2 putNext()
...
com.yahoo.psox.fish.pig.indexjoinst...@1be4777 needsTaskCommit
com.yahoo.psox.fish.pig.indexjoinst...@1be4777 commitTask
com.yahoo.psox.fish.pig.indexjoinst...@1be4777 finish()
As is obvious, two instances are used for different purposes - one to get the
record writer and do the actual write, and another to call the OutputCommitter
and its methods.
Since they are from different instances (StoreFuncInterface), the output
committer is unable to gracefully commit and cleanup.
I am not attaching the StoreFunc, but any user defined StoreFunc will exhibit
this behavior.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.