[ https://issues.apache.org/jira/browse/PIG-4362?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14274793#comment-14274793 ]
liyunzhang_intel commented on PIG-4362: --------------------------------------- i modified some code in SparkLauncher.java 121L {code} -121,7 +129,17 @@ public class SparkLauncher extends Launcher { } startSparkIfNeeded(); + String currentDirectoryPath = Paths.get(".").toAbsolutePath().normalize().toString() + "/"; + startSparkJob(pigContext,currentDirectoryPath); + LinkedList<POStore> stores = PlanHelper.getPhysicalOperators( + physicalPlan, POStore.class); + POStore firstStore = stores.getFirst(); + if( firstStore != null ){ + MapRedUtil.setupStreamingDirsConfSingle(firstStore, pigContext, c); + } {code} This is because we need use MapRedUtil.setupStreamingDirsConfSingle(firstStore, pigContext, c) to initialize org.apache.pig.backend.hadoop.streaming.HadoopExecutableManager#scriptOutputDir otherwise TestStreaming#testOutputShipSpecs fails. TestStreaming#testOutputShipSpecs is a script like following {code} define A `stream.pl` output('output1', 'output2' using MyDeserializer); Y = stream X through A; {code} In this example, output1 will be loaded into Y while the second output will be stored as a subdirectory with name output2 in the output directory specified for pig script. If we do not init org.apache.pig.backend.hadoop.streaming.HadoopExecutableManager#scriptOutputDir, the second output will not be generated. > Make ship work with spark > ------------------------- > > Key: PIG-4362 > URL: https://issues.apache.org/jira/browse/PIG-4362 > Project: Pig > Issue Type: Bug > Components: spark > Reporter: liyunzhang_intel > Assignee: liyunzhang_intel > Attachments: PIG-4362.patch, PIG-4362_1.patch, PIG-4362_2.patch, > PIG-4362_3.patch, PIG-4362_4.patch, test_harnesss_1420652019 > > > Related e2e test: ComputeSpec_1~ComputeSpec_8. > found following error when run ComputeSpec_4.pig > SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an > explanation. > 299 SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory] > 300 ===== Task Information Header ===== > 301 Command: perl PigStreaming.pl > (stdin-org.apache.pig.builtin.PigStreaming/stdout-org.apache.pig.builtin.PigStreaming) > 302 Start time: Mon Dec 29 10:48:43 CST 2014 > 303 ===== * * * ===== > 304 Can't open perl script "PigStreaming.pl": No such file or directory > 305 Details at logfile: > /home/zly/prj/oss/pig/test/e2e/pig/testdist/out/pigtest/root/root-1419821303-streaming.conf/ComputeSpec_4.log > 306 ERROR TestDriver::runTestGroup at : 729 Failed to run test ComputeSpec_4 > <Failed running > ./out/pigtest/root/root-1419821303-streaming.conf/ComputeSpec_4. pig -- This message was sent by Atlassian JIRA (v6.3.4#6332)