Uploaded image for project: 'Pig'
  1. Pig
  2. PIG-5162 Fix failing e2e tests with spark exec type
  3. PIG-5181

JobManagement_3 is failing with spark exec type

    XMLWordPrintableJSON

    Details

    • Type: Sub-task
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: spark-branch
    • Component/s: spark
    • Labels:
      None

      Description

      Task failed on executor node:

      java.lang.RuntimeException: Error while processing 'perl PigStreaming.pl - - nameMap (stdin-org.apache.pig.builtin.PigStreaming/stdout-org.apache.pig.builtin.PigStreaming)' failed with exit status: 2
              at org.apache.pig.backend.hadoop.executionengine.spark.converter.OutputConsumerIterator.readNext(OutputConsumerIterator.java:85)
              at org.apache.pig.backend.hadoop.executionengine.spark.converter.OutputConsumerIterator.hasNext(OutputConsumerIterator.java:96)
              at scala.collection.convert.Wrappers$JIteratorWrapper.hasNext(Wrappers.scala:41)
              at scala.collection.Iterator$$anon$11.hasNext(Iterator.scala:327)
              at scala.collection.convert.Wrappers$IteratorWrapper.hasNext(Wrappers.scala:29)
              at org.apache.pig.backend.hadoop.executionengine.spark.converter.OutputConsumerIterator.readNext(OutputConsumerIterator.java:57)
              at org.apache.pig.backend.hadoop.executionengine.spark.converter.OutputConsumerIterator.hasNext(OutputConsumerIterator.java:96)
              at scala.collection.convert.Wrappers$JIteratorWrapper.hasNext(Wrappers.scala:41)
              at scala.collection.Iterator$$anon$11.hasNext(Iterator.scala:327)
              at org.apache.spark.util.collection.ExternalSorter.insertAll(ExternalSorter.scala:192)
              at org.apache.spark.shuffle.sort.SortShuffleWriter.write(SortShuffleWriter.scala:64)
              at org.apache.spark.scheduler.ShuffleMapTask.runTask(ShuffleMapTask.scala:73)
              at org.apache.spark.scheduler.ShuffleMapTask.runTask(ShuffleMapTask.scala:41)
              at org.apache.spark.scheduler.Task.run(Task.scala:89)
              at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:242)
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
              at java.lang.Thread.run(Thread.java:745)
      

      It seems that in SparkLauncher the cached file is copied from the file system to a temporary file (which case is the original file name + some random string)

      File tmpFile = File.createTempFile(fileName, ".tmp");
      

      and this file is added to SparkContext. It is added with the name of the temp file. This is a problem, since this cached file can't be used with the original name, like in JobManagement_3:

      define CMD `perl PigStreaming.pl - - nameMap` ship(':SCRIPTHOMEPATH:/PigStreaming.pl') cache(':INPATH:/nameMap/part-00000#nameMap');
      

        Attachments

        1. PIG-5181_1.patch
          0.9 kB
          Nándor Kollár
        2. PIG-5181_2.patch
          1 kB
          Nándor Kollár

          Activity

            People

            • Assignee:
              nkollar Nándor Kollár
              Reporter:
              nkollar Nándor Kollár
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: