You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pig.apache.org by "Rohini Palaniswamy (JIRA)" <ji...@apache.org> on 2017/08/11 18:46:00 UTC
[jira] [Created] (PIG-5291) Fix bytecode generation for parallel
runs of python
Rohini Palaniswamy created PIG-5291:
---------------------------------------
Summary: Fix bytecode generation for parallel runs of python
Key: PIG-5291
URL: https://issues.apache.org/jira/browse/PIG-5291
Project: Pig
Issue Type: Sub-task
Reporter: Rohini Palaniswamy
Fix For: 0.18.0
With pig.opt.bytecode=true with PIG-5256, TestScriptLanguage.runParallelTest2, Jython_CompileBindRun_3 fail with following error
{code}
java.lang.LinkageError: loader (instance of org/apache/pig/impl/PigContext$ContextClassLoader): attempted duplicate class definition for name: "org/apache/pig/backend/hadoop/executionengine/physicalLayer/relationalOperators/POForEach_scope_6"
{code}
Since NodeIdGenerator is ThreadLocal, running same script in parallel with different parameters using embedded Python causes conflict in the name of class files generated. Conflicts need to be handled in
- PigContext classloader by making it ThreadLocal
- Class files should have another identifier to differentiate between multiple scripts.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)