Registering a Python function in a directory other than the current working
directory fails
-------------------------------------------------------------------------------------------
Key: PIG-2101
URL: https://issues.apache.org/jira/browse/PIG-2101
Project: Pig
Issue Type: Bug
Components: impl
Affects Versions: 0.8.1
Reporter: Alan Gates
In MapReduce mode, if the register command references a directory other than
the current one, executing the Python UDF on the backend fails with:
Deserialization error: could not instantiate
'org.apache.pig.scripting.jython.JythonFunction' with arguments
'[../udfs/python/production.py, production]'
I assume it is using the path on the backend to try to locate the UDF.
The script is:
{code}
register '../udfs/python/production.py' using jython as bballudfs;
players = load 'baseball' as (name:chararray, team:chararray,
pos:bag{t:(p:chararray)}, bat:map[]);
nonnull = filter players by bat#'slugging_percentage' is not null and
bat#'on_base_percentage' is not null;
calcprod = foreach nonnull generate name, bballudfs.production(
(float)bat#'slugging_percentage',
(float)bat#'on_base_percentage');
dump calcprod;
{code}
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira